htmlunit, upgrade et bouton de formulaire vu comme disabled

2019-02-22 | #htmlunit

Sur le projet, l’upgrade de la version de htmlunit de 2.21 à 2.33 a provoqué une régression. Le bouton de validation des formulaires est vu comme disabled. Sur la version 2.21, le code pour saisir le texte dans les HtmlTextInput utilise la méthode setValueAttribute. Entre la version 2.24 et 2.25, setValueAttribute n’émet plus l’événement qui permet au formulaire de se valider et activer/désactiver le bouton de soumission. A partir de la version 2.

Continuer la lecture 


java, forcer l'ordre d'exécution des tests unitaires

2018-12-18 | #java #test #tu

Parfois, des tests unitaires plantent lorsqu’ils sont exécutés dans un certain ordre. Aujourd’hui, c’est le cas et pour reproduire le problème, j’ai utilisé cette annotation qui permet de spécifier l’ordre que l’on souhaite utiliser lors de l’exécution de tous les tests de la classe. import org.junit.FixMethodOrder; import org.junit.Test; import org.junit.runners.MethodSorters; @FixMethodOrder(MethodSorters.NAME_ASCENDING) public class TestMethodOrder { @Test public void testA() { System.out.println("first"); } @Test public void testB() { System.out.println("second"); } @Test public void testC() { System.

Continuer la lecture 


bash, script seqdate

2018-10-17 | #commande #date #seq

Script réutilisable pour générer des dates avec date et seq #!/bin/bash usage() { local msg="$1" if [[ -n "$msg" ]]; then echo $msg fi echo "usage: $0 <FROM=YYYY-MM-DD> <TO=YYYY-MM-DD>" >&2 exit 1 } if [[ "$#" -ne 2 ]]; then usage fi FORMAT="%Y-%m-%d" FROM=$(date --d "$1" +"$FORMAT") TO=$(date --d "$2" +"$FORMAT") if [[ "$FROM" > "$TO" ]]; then read FROM TO <<< "$TO $FROM" fi echo $FROM while [[ "$FROM" !

Continuer la lecture 


bash, générer des dates avec les commandes seq et date

2018-10-16 | #commande #date #seq

Parfois il peut être utile d’avoir une liste de dates pour appeler un script particulier. Cette liste peut être générée à partir des commandes seq et date comme dans l’exemple ci-dessous. $ for i in $(seq 0 5); do date -d "20180705 $i day" +'%Y%m%d'; done 20180705 20180706 20180707 20180708 20180709 20180710 $ for i in $(seq 0 5); do date -d "20180705 $i day ago" +'%Y%m%d'; done 20180705 20180704 20180703 20180702 20180701 20180630

Continuer la lecture 


bash, select

2018-07-27 | #bash #commande #select

Je viens de m’apercevoir que je n’ai jamais parlé de la commande select sous bash. Celle-ci est très pratique car elle permet de faire un choix en précisant un numéro et non sa valeur. Exemple d’utilisation ci-dessous : $ select n in item1 item2 item3 item4 item5; do if [[ -n "$n" ]]; then echo "You choose: $n"; break; else echo "Invalid choice"; fi; done 1) item1 2) item2 3) item3 4) item4 5) item5 #?

Continuer la lecture 


http, headers sur la gestion du cache et de la sécurité

2018-07-26 | #cache #html #http #securité

public static void addNoCacheHeaders(HttpServletResponse resp) { resp.addHeader(HttpHeaders.CACHE_CONTROL, "max-age=0, no-store, no-cache, must-revalidate, proxy-revalidate, private"); resp.addHeader(HttpHeaders.PRAGMA, "no-cache"); resp.addHeader(HttpHeaders.EXPIRES, "-1"); } public static void addSecurityHeaders(HttpServletResponse resp) { resp.addHeader(HttpHeaders.X_FRAME_OPTIONS, "DENY"); resp.addHeader(HttpHeaders.X_XSS_PROTECTION, "1; mode=block"); resp.addHeader(HttpHeaders.X_CONTENT_TYPE_OPTIONS, "nosniff"); }

Continuer la lecture 


commande, history

2018-04-20 | #commande #history

Parfois, on ne sait plus si on a relancé une commande dans le terminal… Pour avoir un historique daté, voici une petite configuration à ajouter à son .bashrc export HISTTIMEFORMAT="%d/%m %H:%M " Désormais, l’appel à l’historique produit des lignes avec les informations jour/mois heure/minute $ history 492 19/04 16:15 cat ko | sed -e 's/.*(//' -e 's/ seconds.*//' -e 's/^[[:space:]]*$//;/^$/d' | awk '{SUM += $1} END {print "Total : "SUM}' 493 19/04 16:15 connect jenk

Continuer la lecture 


Java, convertir un fichier alaw en pcm

2017-11-24 | #conversion #java #wav

Dans un billet précédent, je parlais d’un petit player en html5 qui devait jouer des wav. Je convertissais les wav en mp3 pour la compatibilité des navigateurs. Lors de l’intégration de celui-ci dans l’IHM d’administration du serveur vocal, j’ai eu quelques soucis de conversion… La conversion en mp3 ne fonctionnait pas car les fichiers en entrée n’étaient pas des vrais “wav”… C’étaient des fichiers A-law ! ACCUEIL_CHOIX_TARIFS.wav: RIFF (little-endian) data, WAVE audio, ITU G.

Continuer la lecture 