URL amigables en aplicaciones Genexus.
DISCLAIMER: El siguiente post es una expresión de deseo.
Las aplicaciones realizadas con GeneXus, tiene la ventaja de poder generarse para diferentes plataformas, facilitando que los dueños de la misma que opten por la plataforma que mas le convenga en el momento.
También es muy común que las aplicaciones generadas con GeneXus duren durante muchos anos, pues es ahi donde se ven las ventajas del desarrollo basado en modelos. No es raro que a lo largo del tiempo cambien cuales son las plataformas mas adecuadas.
Cuales son los problemas que surgen con esto?
Las URL que referencian a las aplicaciones generadas desde blogs, documentos y paginas web, dejan de ser validas cuando se realiza un cambio de plataforma.
Por ejemplo, viendo las siguentes implementaciones de la misma aplicacion GeneXus generada en diferentes plataformas:
En Ruby
http:/servidor/wiki/hwiki.html?Wiki%20Home,
En C#
http://servidor/wiki/hwiki.aspx?Wiki%20Home,
En Java
http://servidor/commwiki/servlet/hwiki?Wiki+Home,
Todas tiene el mismo significado y se comportan igual y su única diferencia es que están en diferentes plataformas.
Estaría bueno contar dentro de GeneXus herramientas para que las URL fuesen amigables, por ejemplo, que se pudiera escribir
http://servidor/aplicacion/programa/TipoObjeto/IdObjeto/
Un ejemplo seria
http://www.srv.com/wiki/hwiki/Article/Wiki+Home/
igual e intercambiable para todas las plataformas de programación soportados por GeneXus.
De esta forma, por mas que cambiemos de plataforma todas las referencias a la misma se mantienen incambiadas, facilitando mucho la portabilidad.
Tambien hacen mas facil y recordables algunas de las URL de nuestras aplicaciones. En vez de tener
http://www2.gxtechnical.com/portal/hgxpp001.aspx?15,4,61,O,S,0,,28329;S;0;A;0;5804;TIMEOUT;;;;;;;;;;;;;;;;A;%20%20/%20%20/%20%20;;0;9;;0;;99;;0;1;%200;N;N;S;B;P
podria tenerse
http://www.gxtechnical.com/websac/SAC/28329/TIMEOUT
que nos haria mas felices a todos.
Otra opcion, seria hacer una recopilacion de las diferentes metodologias de reescritura de URL que hay para las diferentes plataformas y hacer publicos un conjunto de reglas para los diferentes servidores de aplicaciones.
Dejo algunos links, para mi referencia futura, cuando tenga que solucionar este problema en el futuro.
Las aplicaciones realizadas con GeneXus, tiene la ventaja de poder generarse para diferentes plataformas, facilitando que los dueños de la misma que opten por la plataforma que mas le convenga en el momento.
También es muy común que las aplicaciones generadas con GeneXus duren durante muchos anos, pues es ahi donde se ven las ventajas del desarrollo basado en modelos. No es raro que a lo largo del tiempo cambien cuales son las plataformas mas adecuadas.
Cuales son los problemas que surgen con esto?
Las URL que referencian a las aplicaciones generadas desde blogs, documentos y paginas web, dejan de ser validas cuando se realiza un cambio de plataforma.
Por ejemplo, viendo las siguentes implementaciones de la misma aplicacion GeneXus generada en diferentes plataformas:
En Ruby
http:/servidor/wiki/hwiki.html?Wiki%20Home,
En C#
http://servidor/wiki/hwiki.aspx?Wiki%20Home,
En Java
http://servidor/commwiki/servlet/hwiki?Wiki+Home,
Todas tiene el mismo significado y se comportan igual y su única diferencia es que están en diferentes plataformas.
Estaría bueno contar dentro de GeneXus herramientas para que las URL fuesen amigables, por ejemplo, que se pudiera escribir
http://servidor/aplicacion/programa/TipoObjeto/IdObjeto/
Un ejemplo seria
http://www.srv.com/wiki/hwiki/Article/Wiki+Home/
igual e intercambiable para todas las plataformas de programación soportados por GeneXus.
De esta forma, por mas que cambiemos de plataforma todas las referencias a la misma se mantienen incambiadas, facilitando mucho la portabilidad.
Tambien hacen mas facil y recordables algunas de las URL de nuestras aplicaciones. En vez de tener
http://www2.gxtechnical.com/portal/hgxpp001.aspx?15,4,61,O,S,0,,28329;S;0;A;0;5804;TIMEOUT;;;;;;;;;;;;;;;;A;%20%20/%20%20/%20%20;;0;9;;0;;99;;0;1;%200;N;N;S;B;P
podria tenerse
http://www.gxtechnical.com/websac/SAC/28329/TIMEOUT
que nos haria mas felices a todos.
Otra opcion, seria hacer una recopilacion de las diferentes metodologias de reescritura de URL que hay para las diferentes plataformas y hacer publicos un conjunto de reglas para los diferentes servidores de aplicaciones.
Dejo algunos links, para mi referencia futura, cuando tenga que solucionar este problema en el futuro.
Algo que me gustaría ver sería la implementación del patrón MVC en las aplicaciones web de genexus. Además de simplificar bastante la estructura de la aplicación te da el beneficio de generar URL's amigables tipo http://url-servidor/aplicacion/seccion(paquete, modulo, etc)/objeto/accion
ResponderBorrarArriba Enrique!! me sumo a la expresión de deseo (no es la primera).
ResponderBorrarEn la última versión de GXPortal tengo entendido que incorporaron la generación de URL's amigables.
Seguramente también tendrían que incorporar URL's amigables si a futuro van a hacer a las aplicaciones GeneXus RESTfull
Pienso que no es importante volver todas las URL's Amigables. Pienso que el "Amigable" es solo "cara pa'fuera" o sea, sitios públicos o URL puntuales que quiero exponer o divulgar (Los que quedan fuera son aplicaciones de intranet o empresariales en donde el concepto SEO de URL's o de pasar link's).
Otro deseo para otro post.. que las aplicaciones GeneXus te ayuden en la tarea de SEO encapsulando las buenas prácticas y permitiendo a quienes crean páginas simplemente se aseguren de llenar los campitos con la información necesaria para que los buscadores lo tengan en consideración.