4Trabes Historias de una empresa en 100 metros cuadrados

El blog de Trabe Soluciones

Usando un keystore con Play

| | Comentarios

Este post es para Simón. El otro día mientras le dábamos clase en el Master de Software Libre nos dijo que últimamente no escribíamos mucho. Acto seguido le prometimos un post dedicado. Seguro que se lo tomó a broma :)

Play en su versión actual (1.0.3.1) no soporta keystores, sin embargo, con un poquito de Python podemos modificar el script play para que lo haga.

Alrededor de la línea 468 del fichero $PLAY_HOME/play (en el contexto del método do_java) metemos un código parecido a este:

1
2
3
4
5
6
7
8
9
10
trustStore = readConf('java.trustStore')
if not trustStore == '':
    if os.path.exists(trustStore):
        print "~ using keystore \"%s\"" % trustStore
        java_args.append('-Djavax.net.ssl.trustStore=%s' % trustStore)
        trustStorePassword = readConf('java.trustStore.password')
        if trustStorePassword == '':
            print "~ WARNING: No java.trustStore.password key found in config. You need a password to use a keystore"
        else:
            java_args.append('-Djavax.net.ssl.trustStorePassword=%s' % trustStorePassword)

Y ya podemos configurar nuestro keystore en el fichero conf/application.conf de nuestra aplicación.

1
2
java.trustStore=/home/david/opt/javacerts/development
java.trustStore.password=123456

play run y a correr.

Lo sentimos, pero los comentarios están cerrados

como te gusta el python granuja!!

27/Jul/2010 Marcos

Pues sí que me lo había tomado a broma, pero al ver “una entrada no leída” de 4Trabes en el reader, ya sospeché algo así :D

¿Este es el framework moderno sobre Java del que nos hablabais, no? Y por cierto, ¡40 comentarios sobre Wicket! Toma flame :D

Hola Simón, efectivamente este es el framework del que os hablamos. Tiene cosas muy buenas y todavía está creciendo así que podemos esperar que mejore mucho más. Aun así sigo prefiriendo Rails xD. Yehuda Katz puso un tweet (que ahora no logro encontrar) donde hablaba de Play con respecto a Rails, que decía algo como “So close, yet so far”.

Y lo del flame… bueno, es lo que pasa cuando te cagas en la tecnología de cabecera de otra persona. Pero fue sin mala intención :)