You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Davanum Srinivas (JIRA)" <ji...@apache.org> on 2006/05/10 18:34:10 UTC

[jira] Resolved: (AXIS2-707) getOutputStream() has already been called for this response

     [ http://issues.apache.org/jira/browse/AXIS2-707?page=all ]
     
Davanum Srinivas resolved AXIS2-707:
------------------------------------

    Resolution: Fixed

Fixed in latest SVN.

thanks,
dims

> getOutputStream() has already been called for this response
> -----------------------------------------------------------
>
>          Key: AXIS2-707
>          URL: http://issues.apache.org/jira/browse/AXIS2-707
>      Project: Apache Axis 2.0 (Axis2)
>         Type: Bug

>   Components: databinding
>     Versions: 1.0
>  Environment: tomcat 5.5.17, windows XP
>     Reporter: Arnaud MERGEY

>
> I want to generate a web service from a wsdl file with WSDL2Java.
> I'have tried adb data binding and jibx data binding.
> I successfully deploy my web service in tomcat
> When I invoke the service, I'have an HTTP 500 server error "java.lang.IllegalStateException: getOutputStream() has already been called for this response"
> whith both adb and jibx databinding.
> The only code I have written is in generated skeleton and I only return the response object. 
> stack trace:
> org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling(OMElementImpl.java:265)
>    org.apache.axiom.om.impl.traverse.OMChildrenQNameIterator.hasNext(OMChildrenQNameIterator.java:75)
>    org.apache.axiom.om.impl.llom.OMElementImpl.getFirstChildWithName(OMElementImpl.java:222)
>    org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.getHeader(SOAPEnvelopeImpl.java:76)
>    org.apache.axis2.engine.AxisEngine.createFaultMessageContext(AxisEngine.java:183)
>    org.apache.axis2.transport.http.AxisServlet.handleFault(AxisServlet.java:168)
>    org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:153)
>    javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
>    javax.servlet.http.HttpServlet.service(HttpServlet.java:802) 
> tomcat stack trace
> GRAVE: Exception Processing ErrorPage[errorCode=500, location=/axis2-web/Error/error500.jsp]
> org.apache.jasper.JasperException: "getOutputStream()" a déjà été appelé pour cette réponse
>    at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
>    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:387)
>    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
>    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
>    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
>    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
>    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:465)
>    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)
>    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
>    at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:363)
>    at org.apache.catalina.core.StandardHostValve.status(StandardHostValve.java:284)
>    at org.apache.catalina.core.StandardHostValve.throwable(StandardHostValve.java:228)
>    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:134)
>    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
>    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
>    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
>    at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
>    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
>    at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
>    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
>    at java.lang.Thread.run(Thread.java:595) 
> with empty header request work with ADB and jibx but don't work with xmlbeans, request always work with none databinding (axiom)
> My SOAP request:
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:snp="http://www.sunopsis.com/API/SnpsInvoke/">
>    	
>    <soapenv:Body>
>       <snp:invokeScenarioRequest>
>          <!--Optional:-->
>          <RepositoryConnection>
>             <JdbcDriver>org.hsqldb.jdbcDriver</JdbcDriver>
>             <JdbcUrl>jdbc:hsqldb:hsql://localhost</JdbcUrl>
>             <JdbcUser>sa</JdbcUser>
>             <JdbcPassword></JdbcPassword>
>             <SnpsUser>SUPERVISOR</SnpsUser>
>             <SnpsPassword>SUNOPSIS</SnpsPassword>
>             <WorkRepository>WORKREP</WorkRepository>
>          </RepositoryConnection>
>          <Command>
>             <BaseCommand>
>                <LogLevel>5</LogLevel>
>                <SyncMode>0</SyncMode>
>                <Context>GLOBAL</Context>
>             </BaseCommand>
>             <ScenarioName>TEST</ScenarioName>
>             <ScenarioVersion>1</ScenarioVersion>
>          </Command>
>          <Agent>
>             <Host>localhost</Host>
>             <Port>20910</Port>
>          </Agent>
>       </snp:invokeScenarioRequest>
>    </soapenv:Body>
> </soapenv:Envelope>
> My WSDL:
> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> 	xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
> 	xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
> 	xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
> 	xmlns:snps="http://www.sunopsis.com/API/SnpsInvoke/"
> 	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> 	xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> 	targetNamespace="http://www.sunopsis.com/API/SnpsInvoke/">
> 	<wsdl:types>
> 		<xsd:schema xmlns="http://www.sunopsis.com/API/SnpsInvoke/"
> 			targetNamespace="http://www.sunopsis.com/API/SnpsInvoke/"
> 			elementFormDefault="unqualified"
> 			attributeFormDefault="unqualified">
> 			<xsd:element type="CommandResultType"
> 				name="invokeScenarioResponse" />
> 			<xsd:element name="invokeScenarioRequest">
> 				<xsd:complexType>
> 					<xsd:all>
> 						<xsd:element minOccurs="0"
> 							type="RepositoryConnectionType" name="RepositoryConnection" />
> 						<xsd:element type="ScenarioCommandType"
> 							name="Command" />
> 						<xsd:element type="AgentType" name="Agent" />
> 					</xsd:all>
> 				</xsd:complexType>
> 			</xsd:element>
> 			<xsd:complexType name="RepositoryConnectionType">
> 				<xsd:all>
> 					<xsd:element type="xsd:string" name="JdbcDriver" />
> 					<xsd:element type="xsd:string" name="JdbcUrl" />
> 					<xsd:element type="xsd:string" name="JdbcUser" />
> 					<xsd:element type="xsd:string" name="JdbcPassword" />
> 					<xsd:element type="xsd:string" name="SnpsUser" />
> 					<xsd:element type="xsd:string" name="SnpsPassword" />
> 					<xsd:element type="xsd:string"
> 						name="WorkRepository" />
> 				</xsd:all>
> 			</xsd:complexType>
> 			<xsd:complexType name="BaseCommandType">
> 				<xsd:all>
> 					<xsd:element default="5" type="xsd:int"
> 						name="LogLevel" />
> 					<xsd:element default="0" type="xsd:int"
> 						name="SyncMode" />
> 					<xsd:element type="xsd:string" name="Context" />
> 				</xsd:all>
> 			</xsd:complexType>
> 			<xsd:complexType name="ScenarioCommandType">
> 				<xsd:sequence>
> 					<xsd:element type="BaseCommandType"
> 						name="BaseCommand" />
> 					<xsd:element type="xsd:string" name="ScenarioName" />
> 					<xsd:element type="xsd:string"
> 						name="ScenarioVersion" />
> 					<xsd:element minOccurs="0" type="VariableType"
> 						name="Variables" maxOccurs="unbounded" />
> 				</xsd:sequence>
> 			</xsd:complexType>
> 			<xsd:complexType name="VariableType">
> 				<xsd:all>
> 					<xsd:element type="xsd:string" name="Name" />
> 					<xsd:element type="xsd:string" name="Value" />
> 				</xsd:all>
> 			</xsd:complexType>
> 			<xsd:complexType name="CommandResultType">
> 				<xsd:all>
> 					<xsd:element type="xsd:boolean" name="Ok" />
> 					<xsd:element type="xsd:string" name="SessionNumber" />
> 					<xsd:element type="xsd:string" name="ErrorMessage" />
> 				</xsd:all>
> 			</xsd:complexType>
> 			<xsd:complexType name="AgentType">
> 				<xsd:all>
> 					<xsd:element type="xsd:string" name="Host" />
> 					<xsd:element type="xsd:int" name="Port" />
> 				</xsd:all>
> 			</xsd:complexType>
> 		</xsd:schema>
> 	</wsdl:types>
> 	<wsdl:message name="invokeScenarioRequest">
> 		<wsdl:part element="snps:invokeScenarioRequest" name="part1" />
> 	</wsdl:message>
> 	<wsdl:message name="invokeScenarioResponse">
> 		<wsdl:part element="snps:invokeScenarioResponse" name="part1" />
> 	</wsdl:message>
> 	<wsdl:portType name="SnpsInvokePortType">
> 		<wsdl:operation name="invokeScenario">
> 			<wsdl:input message="snps:invokeScenarioRequest" />
> 			<wsdl:output message="snps:invokeScenarioResponse" />
> 		</wsdl:operation>
> 	</wsdl:portType>
> 	<wsdl:binding type="snps:SnpsInvokePortType"
> 		name="SnpsInvokeSOAP11Binding">
> 		<soap:binding style="document"
> 			transport="http://schemas.xmlsoap.org/soap/http" />
> 		<wsdl:operation name="invokeScenario">
> 			<soap:operation style="document"
> 				soapAction="invokeScenario" />
> 			<wsdl:input>
> 				<soap:body
> 					namespace="http://www.sunopsis.com/API/SnpsInvoke/" use="literal" />
> 			</wsdl:input>
> 			<wsdl:output>
> 				<soap:body
> 					namespace="http://www.sunopsis.com/API/SnpsInvoke/" use="literal" />
> 			</wsdl:output>
> 		</wsdl:operation>
> 	</wsdl:binding>
> 	<wsdl:binding type="snps:SnpsInvokePortType"
> 		name="SnpsInvokeSOAP12Binding">
> 		<soap12:binding style="document"
> 			transport="http://schemas.xmlsoap.org/soap/http" />
> 		<wsdl:operation name="invokeScenario">
> 			<soap12:operation style="document"
> 				soapAction="invokeScenario" />
> 			<wsdl:input>
> 				<soap12:body
> 					namespace="http://www.sunopsis.com/API/SnpsInvoke/" use="literal" />
> 			</wsdl:input>
> 			<wsdl:output>
> 				<soap12:body
> 					namespace="http://www.sunopsis.com/API/SnpsInvoke/" use="literal" />
> 			</wsdl:output>
> 		</wsdl:operation>
> 	</wsdl:binding>
> 	<wsdl:service name="SnpsInvoke">
> 		<wsdl:port binding="snps:SnpsInvokeSOAP11Binding"
> 			name="SnpsInvokeSOAP11port0">
> 			<soap:address location="http://www.sunopsis.com/" />
> 		</wsdl:port>
> 		<wsdl:port binding="snps:SnpsInvokeSOAP12Binding"
> 			name="SnpsInvokeSOAP12port0">
> 			<soap12:address location="http://www.sunopsis.com/" />
> 		</wsdl:port>
> 	</wsdl:service>
> </wsdl:definitions>

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira