2008-09-06 14 views
18

Vengo de un fondo Enterprise Java que involucra una pila de software bastante pesado, y recientemente descubrí el Stripes framework; Mi impresión inicial es que esto parece hacer un buen trabajo al minimizar las partes desagradables de crear una aplicación web en Java.¿Experiencia práctica usando rayas?

¿Alguien ha usado Stripes para un proyecto que se ha puesto en marcha? ¿Y puedes compartir tus experiencias del proyecto? Además, ¿consideró alguna otra tecnología y (de ser así) por qué eligió Stripes?

Respuesta

8

Utilizamos Rayas desde hace aproximadamente 4 años. Nuestra pila es Stripes/EJB3/JPA.

Muchos usan Stripes plus Stripernate como una única solución de pila completa. No lo hacemos porque queremos nuestra lógica empresarial dentro del nivel EJB, por lo que simplemente confiamos en las entidades JPA como modelo combinado y DTO.

Stripes realiza la vinculación a nuestras Entidades/DTO y las devolvemos al nivel de EJB para que funcionen. Para la mayor parte de nuestro material CRUD, esto es muy sencillo y sencillo, por lo que nuestro caso de uso del 80% es trivial para trabajar. Sin embargo, tenemos la flexibilidad de hacer lo que queramos para los casos límite que siempre surgen con aplicaciones complicadas.

Tenemos un Action Bean de base muy grande que encapsula la mayor parte de nuestras operaciones CRUD que hace call backs a las subclases individuales específicas de las entidades y formularios.

También tenemos una gran biblioteca interna de archivos de etiquetas para administrar nuestras páginas, seguridad, navegación, tareas, etc. Un simple formulario de edición CRUD es poco más que una lista de nombres de campos, y obtenemos todos los menús y menús y controles de acceso "gratis".

Lo bueno de esto es que tenemos que mantener la metáfora basada en la solicitud HTTP que nos gusta y podemos elegir las partes individuales del sistema en lugar de usar una pila de grasa. La capa de Stripes es delgada y mala, y nunca se interpone en nuestro camino.

Tenemos un montón de Ajax integrando YUI y JQuery, todos trabajando contra nuestras Stripes y EJB apilan sin dolor.

También porté una versión más ligera de la pila a GAE para un proyecto de muestra, básicamente teniendo que hacer un trabajo menor en nuestro nivel EJB. Entonces, toda la pila es muy ágil y amistosa para cambiar. Stripes es un gran factor de eso ya que dejamos que haga las pocas cosas que hace, y lo hace muy bien. Luego delegue el resto en otras partes de la pila.

Como siempre hay partes que las personas preferirían tener diferentes a veces, pero Stripes sería la última parte en nuestra pila, francamente. Podría ser mejor para soportar el conjunto completo de verbos HTTP, pero prefiero corregir Stripes para hacerlo mejor que cambiar a otra cosa.

+0

Actualizada para tener esta como respuesta preferida, ya que está más actualizada que las demás. –

5

Convertimos un marco web de fabricación propia en rayas en aproximadamente una semana. Lo estamos usando en producción en este momento y es un gran marco. La comunidad es extremadamente útil y el marco no se interpone en tu camino. Se puede extender en muchos lugares para cambiar el comportamiento como mejor le parezca. La función de enlace de URL también es increíble. Implementamos un marco de seguridad robusto usando anotaciones e interceptores. Estamos usando la primavera para la inyección de dependencia y Stripes tiene un excelente soporte para eso.

Definitivamente usaré la nueva versión 1.5 si va a usarlo.

Soy un gran admirador del framework. Vengo de un fondo de puntales y es el marco exacto que estaba buscando. Los otros desarrolladores de nuestro equipo realmente disfrutan usando el framework de stripes.

Acabo de comprar el libro beta de rayas del sitio del programador pragmático. Es un gran recurso en Stripes 1.5.

+0

¿Cuán grande de una aplicación te mudaste? ¿Era principalmente su CRUD típico o tenía Javascript complejo? –

+1

Nuestra aplicación presenta datos de muchos sistemas de respaldo diferentes. Trae esos datos en un solo lugar. Nuestro tipo de material CRUD se encontraba principalmente en la parte de administración del sitio. Estamos usando el marco de JavaScript de yui para el diseño y las cosas de ajax. Es una aplicación bastante grande, aunque unos 38,000 LOC. – ScArcher2

+0

Gracias por su respuesta. Muy alentador ... He pasado un tiempo aprendiendo PHP sobre mis habilidades J2EE existentes, pero Stripes podría atraerme de regreso. –

7

Utilizamos franjas ahora en todos nuestros sitios de producción, y lo hemos estado durante aproximadamente un año. Es un producto impresionante en comparación con los puntales, que solíamos usar antes de eso. El simple hecho de que literalmente no haya archivos de configuración XML y de que pueda configurarlo todo con una cantidad mínima de clases y anotaciones es increíble.

En términos de escala & velocidad, en realidad parece ser mejor que los puntales, y mi suposición sería porque hay menos capas involucradas. El código con el que termina también es mucho más limpio, porque no tiene que irse a separar los archivos XML para descubrir hacia dónde se dirigen los redireccionamientos.

Lo usamos con un backend EJB3, y los dos parecen funcionar muy bien juntos, porque puedes usar tu EJB POJO dentro de tu objeto actionBean, sin necesidad de un objeto de forma como en los puntales.

En nuestra evaluación, consideramos una versión alfa de struts (que admite anotaciones) y una gran cantidad de otros marcos, pero rayas ganadas debido a su documentación superior, estabilidad y limpieza.

No se pudo encontrar la manera de dejar un comentario: por lo que para responder a su segunda pregunta no hemos encontrado un solo error en Stripes que yo sepa. Esto es bastante impresionante para un marco de código abierto. Todavía no he probado la última versión (1.5), pero 1.4.x es muy estable.

+0

Gracias por su respuesta. ¿Qué tan confiable ha sido la base de código central (es decir, ¿ha encontrado algún defecto)? –

+6

Ahora que esta respuesta tiene casi 2 años, estaría MUY interesado en una actualización sobre cómo son tus proyectos de rayas. – digitaljoel

+0

rustyshelf, @digitaljoel ¿Qué tal otros 6 años después? – user1091344

4

También llegué de un fondo de Struts y JSF en Stripes. Pasé de un entorno empresarial grande que utilizaba principalmente struts y JSF en proyectos más nuevos, a un entorno más pequeño que hacía todos sus J2EE en Stripes.

Parece que Stripes le ofrece lo que desea en un marco de trabajo web sin molestarse demasiado. No es necesaria mucha configuración, como otros ya han mencionado. Desarrollo muy rápido y le permite enfocarse en la presentación, etc. en lugar de molestarse con el marco.

Si tuviera que comenzar un nuevo proyecto y tuviera algo que decir, elegiría Stripes o JSF.Podría haber estado asustado de Stripes si tuviera que tomar la decisión de cambiar a él, porque se ve como un proyecto básico de forja en lugar de un marco de nivel empresarial, pero parece ser bastante sólido. Usamos Stripernate para ORM fácil.

Sin embargo, me recuerda a Fruit Stripe gum, que perdió su sabor DEMASIADO RÁPIDO.

5

Ahora hemos utilizado Stripes en múltiples proyectos de producción y hasta ahora la experiencia ha sido excelente. El tiempo de configuración es bajo y los problemas de administración de la configuración parecen ser menores. Tenemos webapps ejecutándose con Stripes/Dojo/Hibernate y otros con una combinación de Stripes/Spring/JSP/Jquery, etc. Agregar Stripes a nuestros proyectos existentes fue bastante simple gracias a su compatibilidad para integrar las configuraciones de Spring existentes. Usar Stripes con JSP es divertido, aunque a veces sientes la necesidad de codificar en Java y no tienes que usar tanto el JSTL.

Nota: Esta es una vieja pregunta, pero dado que aparece muy rápido cuando busca el uso de Stripes, le agrego una respuesta.

-12

Stripes es la tecnología de ayer, si puedes elegir algo un poco más moderno como GWT.

+3

Esto es como decir que HTML es tecnología de ayer y que solo debería usar Javascript, ya que es moderno. Porque Stripes es un marco de trabajo basado en la generación de páginas HTML y GWT es un compilador de Java a Java para compilar aplicaciones RIA (¡es bueno asegurarse de que Google nunca encuentre su sitio web!) – Kdeveloper

+0

Bueno, el cartel no mencionó SEO. la aplicación JS pura o alguna mezcla no parece ser un problema. La mayoría de las aplicaciones de negocios que usan crud y similares no necesitan ser buscadas. –

+0

@ Kdeveloper No estamos discutiendo HTML. Stripes y HTML son bestias muy diferentes, no tienes que elegir Stripes para hacer HTML, de hecho, horror shock puedes elegir a muchos otros técnicos. Solo digo que elegir moderno y mejor no lo acepte viejo y aburrido. Hoy tenemos computadoras, solo un tonto usaría un cincel y una piedra. –

Cuestiones relacionadas