Dudas con mis primeros pasos con J2EE.
¡Hola a todos!,
Bueno pues antes que nada, les haré una breve introducción: Hace unos días empecé a dar mis primeros pasos con J2EE (Fuí muy breve para que no se duerman leyendo). Estoy documentándome un poco pero aún las cosas no me quedan muy claras, me gustaría me puedieran ayudar respecto a lo básico en su funcionamiento. Recién acabo de instalar Netbeans 6.7.1 que incluye los complementos para crear proyectos de "Java Web" y luego me pide seleccionar un servidor y me aparecen dos opciones: "GlassFish v2.1" y "GlassFish v3 Prelude Domain", entonces, ¿Cuál es la diferencia entre uno y otro? ¿Qué es mas o me nos lo que hacen?. Algunos también tienen Tomcat y escuché que puedo utilizarlos indistintamente. Realmente cualquier aportación que me guíe por "el buen camino de J2EE" sería beneficioso, aunque sería bueno que no me digan cosas algo "locas" mas bien las básicas, para no perderme por ahora y poder tomar rumbo.
Esto es todo por el momento, estaré frecuentándolos por los foros de J2EE y espero tener una respuesta positiva ¡por parte de ustedes!, gracias.
- Inicie sesión o regístrese para enviar comentarios
También se desplega una
También se desplega una opción en Netbeans al crear mi proyecto llamada "Java EE Version" y ahí asoman tres opciones: Java EE 5, J2EE 1.4 y J2EE 1.3. ¿Cuál puedo seleccionar? Hasta el momento estoy escogiendo las opciones por default y en estos momentos voy a hacer mi primer proyecto, a ver cómo me va.
JEE 5
JEE 5 es lo más nuevo... las otras dos son las conocidas como J2EE, creo que el estandar es básicamente el mismo pero uno es para usarse con Java 1.3 y el otro con Java 1.4. JEE 5 ya son estándares distintos (versiones más recientes de EJB, así como de arquitecturas de JTA y JCA, vienen algunas cosas nuevas también) y funciona con Java 5 o 6.
Glassfish es un contenedor de aplicaciones JEE 5. Uno similar es JBoss 5. Tomcat es un contenedor de aplicaciones web y de hecho JBoss contiene Tomcat dentro para la parte de web apps. Lo adicional de JBoss y Glassfish es que puedes correr servicios que se pueden acceder por medio de RMI o de algunos otros protocolos. Cada uno tiene sus beneficios pero la cosa es que tienen que apegarse a un estándar, y mientras tu aplicación siga dichos estándares, puedes crear un WAR o un EAR que funcione con un mínimo de cambios en configuraciones, dentro de Glassfish o JBoss, sin tener que recompilar nada.
Y pues tienes que familiarizarte con muchos TLA's (Three-Letter Acronyms) como JTA, JCA, EJB, BPM, RMI, JMS, etc.
Hola ezamudio, gracias por
Hola ezamudio, gracias por tu respuesta. Ahora tengo otro problema, no logro compilar un pequeño ejemplo, no sé que es lo que hago mal.
Archivo formulario.html
Archivo SelectBeer.java (Servlet)
and
methods.
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try {
// TODO output your page here
out.println("");
out.println("");
out.println("Servlet SelectBeer");
out.println("");
out.println("");
//out.println("
Servlet SelectBeer at " + request.getContextPath () + "
");
//out.println("
Recomendacion para seleccion de cerveza
");
String c = request.getParameter( "color" );
ExpertoCerveza2 ec = new ExpertoCerveza2( );
List resultado = ec.getMarcas( c );
Iterator it = resultado.iterator( );
while( it.hasNext( ) ) {
out.println( " Opción: " + it.next( ) );
}
//out.println( "Buen color de cerveza" + c );
out.println("");
out.println("");
} finally {
out.close();
}
}
//
method.
/**
* Handles the HTTP
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
method.
* Handles the HTTP
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Returns a short description of the servlet.
* @return a String containing servlet description
*/
@Override
public String getServletInfo() {
return "Short description";
}//
}
Archivo ExpertoCerveza.java (Modelo)
No sé si haya algo mal. =S
Miren, les adjunto el
Miren, les adjunto el archivo para que vean el ejemplo que intento hacer... es muy sencillo pero no logro hacer que funcione:
Error?
Mencionas que no compila pero no dices qué errores te da el compilador.
¡Ya logré solucionarlo!
¡Ya logré solucionarlo! Primero que nada, le modifiqué en el formulario "SelectBeer.do" a "SelectBeer" no entiendo cuál era el inconveniente... aparte funcionó con Tomcat, por que con GlassFish no me funcionó.
Errores
Postea tus errores de compilación o lo que te salió, así es imposible saber cual fue el problema ;-)
Una pregunta
Oye ¿de casualidad el ejemplo no es de un libro llamado "Head First Servlets and JSP" de Kathy Sierra? Porque este libro tiene algunos problemas.
No sé, estoy siguiendo un
No sé, estoy siguiendo un ejemplo que estaba en unas diapositivas de la facultad de mátemáticas de la uady.
Publicaré mis errores para la próxima.
Efectivamente
Ya vi las diapositivas y efectivamente los diagramas y el ejemplo son del libro que te menciono "Head First Servlets and JSP" . Yo también tuve algunos problemas con esos ejercicios. Pero que bueno que ya los ejecutaste. Saludos
Muchas gracias por la
Muchas gracias por la sugerencias mathemathician, lo tendré presente. Hasta pronto.