Os pongo en antecedentes, estoy desarrollando un proyecto con las siguientes tecnologias:
- Flex 4 : Capa visual
- JAVA: Contiene la logica de negocio de la aplicación
- Struts: Para clarificar patron MVC en mi cacao de aplicación
- Hibernate: Persistencia de Datos
- SSLEXT: Extension para struts del famoso protocolo de encriptación web HTTPS
Para la comunicación entre FLex y Java utilizo la libreria: FXstruts
[url=http://code.google.com/p/fxstruts/downloads/list][/url]
Todo desplegado sobre tomcat
El problema viene al introducir a mi desarrollo Flex, los parametros que paso al servlet desde la capa de FLex llegan perfectamente (En mi caso es la pagina de Login, llega el user y la pass al Servlet), hasta ahi todo correcto, el problema llega cuando toca redireccionar a otra pagina en mi caso, por utilizar struts lo determina el tag del archivo struts-config.xml:
Código:
<forward name="success" path="/Main.jsp">
Cuando tenia solamente java, lo hacia sin problemas, pero cuando he metido flex me salta la siguiente excepcion en el tomcat:
Código:
la pagina de login es el HTML q genera el FLEX que lo renombro a .jsp para que pueda recibir atributos en caso de que la pass sea incorrecta(que tampoco lo hace... no puedo redireccionar)java.lang.IllegalStateException: getOutputStream() ya ha sido llamado para esta respuesta at org.apache.catalina.connector.Response.getWriter(Response.java:604) at org.apache.catalina.connector.ResponseFacade.getWriter(ResponseFacade.java:198) at org.apache.jasper.runtime.JspWriterImpl.initOut(JspWriterImpl.java:125) at org.apache.jasper.runtime.JspWriterImpl.flushBuffer(JspWriterImpl.java:118) at org.apache.jasper.runtime.PageContextImpl.release(PageContextImpl.java:186) at org.apache.jasper.runtime.JspFactoryImpl.internalReleasePageContext(JspFactoryImpl.java:118) at org.apache.jasper.runtime.JspFactoryImpl.releasePageContext(JspFactoryImpl.java:77) at org.apache.jsp.Main_jsp._jspService(Main_jsp.java:74) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292) at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085) at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414) at javax.servlet.http.HttpServlet.service(HttpServlet.java:690) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:680)
El caso que una vez llegan los datos a java no puedo volver a flex.
Por dios que sepa alguien la solución estoy atrancadisimo.
GRACIAS!!!!!