You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by Cencio <ce...@gmail.com> on 2008/04/14 17:21:02 UTC
Re: [CXF] deployment problems [maybe bug?]
Ok... it don't seems a configuration error...
In my wsdl i have 2 operation, a request/response and a Oneway.
If i remove the Oneway it works!!
If i add it all operations are threated as Oneway..
Seems a bug.. someone can try to reproduce it?
Cencio wrote:
>
> Tryed also with CXF 2.0.5.. same results.
>
> Oh, in the last post i mess with copy/paste.. this is my endpoint
> definition:
>
> <jaxws:endpoint
> id="ese6ordine"
> serviceName="s:OrdineService"
> implementor="isi.esercitazione.java2wsdl.Server"
> address="/ordine"
> xmlns:s="http://www.rivenditore.org/Ordine"
> wsdlLocation = "WEB-INF/ordini.wsdl" />
>
>
> Still stuck,
> thx, again
> Lorenzo
>
>
>
> Cencio wrote:
>>
>> Again with this issue:
>>
>> This is my enpoint definition:
>>
>> <jaxws:endpoint
>> id="ese6ordine"
>> serviceName="s:OrdineService"
>> implementor="isi.esercitazione.java2wsdl.Server"
>> address="/ordine" WEB-INF/ordini.wsdl
>> xmlns:s="http://www.rivenditore.org/Ordine"
>> wsdlLocation = "WEB-INF/ordini.wsdl" />
>>
>> If i remove the wsdlLocation, the wsdl is correctly generated and
>> everything works fine (all calls are replyed with my message). If i
>> leave, the http://localhost:8080/ese6/ordine?wsdl is correctly showign
>> WEB-INF/ordini.wsdl but all calls are threat as oneway... if u need i can
>> send the war and sources.
>>
>> Thx for any help,
>> Lorenzo
>>
>>
>>
>>
>> Cencio wrote:
>>>
>>>
>>> dkulp wrote:
>>>>
>>>> Couple questions:
>>>> 1) What version of CXF?
>>>>
>>> apache-apache-cxf-2.0.4-incubator
>>>
>>> dkulp wrote:
>>>>
>>>> 2) What deployment environment? Tomcat?
>>>>
>>> Yes, Tomcat
>>>
>>> dkulp wrote:
>>>>
>>>> 3) What's logged to the servers logs?
>>>>
>>> Nothing on server logs.. Just a "Error reading XMLStreamReader on client
>>> side"
>>> for Request/Response operation.
>>>
>>> dkulp wrote:
>>>>
>>>> Looking at the code, if res = msgFac.createMessage(); throws an
>>>> exception, the return is null and nothing would get written out. It
>>>> might be best to wrapper the exceptions with a WebServiceException or
>>>> SOAPFaultException and throw that so the proper exception handling
>>>> could
>>>> occur.
>>>>
>>> I try to writeOut the response just before the return, and it's fine.
>>> I also try to catch any error doing a "throw new
>>> WebServiceException(e);" but no message is going out..
>>>
>>> dkulp wrote:
>>>>
>>>> Another note:
>>>> Instead of creating all the logger beans and the Bus bean and
>>>> configuring
>>>> all the interceptors and such, it's probably easier to just do:
>>>>
>>>> <cxf:bus>
>>>> <cxf:features>
>>>> <cxf:logging/>
>>>> </cxf:features>
>>>> </cxf:bus>
>>>>
>>>> ns:
>>>> xmlns:cxf="http://cxf.apache.org/core"
>>>>
>>>> spring validation info:
>>>> http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd
>>>>
>>>> Certainly less verbose. :-)
>>>>
>>> Yes :D it's more clean and easy to read. thx for the tip,
>>>
>>> Thx Dan, if u need any other info or have any solution to test just tell
>>>
>>> Regards,
>>> Lorenzo
>>>
>>>
>>>
>>> On Friday 11 April 2008, Cencio wrote:
>>>> Hi all,
>>>>
>>>> I have a provider implementation for a service, then i want deploy
>>>> with a specified wsdl and every msg should call the invoke() method
>>>>
>>>> I deploy it and my specified wsdl if correctly displayed, but every
>>>> msg sent to the service is threat as OneWay (an empty 200ok is sent
>>>> every time... )
>>>>
>>>> Here is the config:
>>>>
>>>> web.xml
>>>>
>>>>
>>>> <?xml version="1.0" encoding="ISO-8859-1"?>
>>>>
>>>> <!DOCTYPE web-app
>>>> PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
>>>> "http://java.sun.com/dtd/web-app_2_3.dtd">
>>>> <web-app>
>>>> <context-param>
>>>> <param-name>contextConfigLocation</param-name>
>>>> <param-value>WEB-INF/beans.xml</param-value>
>>>> </context-param>
>>>>
>>>> <listener>
>>>> <listener-class>
>>>> org.springframework.web.context.ContextLoaderListener
>>>> </listener-class>
>>>> </listener>
>>>>
>>>> <servlet>
>>>> <servlet-name>CXFServlet</servlet-name>
>>>> <display-name>CXF Servlet</display-name>
>>>> <servlet-class>
>>>> org.apache.cxf.transport.servlet.CXFServlet
>>>> </servlet-class>
>>>> <load-on-startup>1</load-on-startup>
>>>> </servlet>
>>>>
>>>> <servlet-mapping>
>>>> <servlet-name>CXFServlet</servlet-name>
>>>> <url-pattern>/*</url-pattern>
>>>> </servlet-mapping>
>>>> </web-app>
>>>>
>>>>
>>>> beans.xml
>>>>
>>>> <beans xmlns="http://www.springframework.org/schema/beans"
>>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>> xmlns:jaxws="http://cxf.apache.org/jaxws"
>>>> xsi:schemaLocation="
>>>> http://www.springframework.org/schema/beans
>>>> http://www.springframework.org/schema/beans/spring-beans.xsd
>>>> http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd">
>>>>
>>>> <import resource="classpath:META-INF/cxf/cxf.xml" />
>>>> <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
>>>> <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
>>>> <bean id="logInbound"
>>>> class="org.apache.cxf.interceptor.LoggingInInterceptor"/>
>>>> <bean id="logOutbound"
>>>> class="org.apache.cxf.interceptor.LoggingOutInterceptor"/>
>>>>
>>>> <bean id="cxf" class="org.apache.cxf.bus.CXFBusImpl">
>>>> <property name="inInterceptors">
>>>> <list>
>>>> <ref bean="logInbound"/>
>>>> </list>
>>>> </property>
>>>> <property name="outInterceptors">
>>>> <list>
>>>> <ref bean="logOutbound"/>
>>>> </list>
>>>> </property>
>>>> <property name="outFaultInterceptors">
>>>> <list>
>>>> <ref bean="logOutbound"/>
>>>> </list>
>>>> </property>
>>>> </bean>
>>>> <jaxws:endpoint
>>>> id="ese6ordine"
>>>> serviceName="s:OrdineService"
>>>> implementor="isi.esercitazione.java2wsdl.Server"
>>>> address="/ordine"
>>>> xmlns:s="http://www.rivenditore.org/Ordine"/>
>>>>
>>>> </beans>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> isi.esercitazione.java2wsdl.Server
>>>>
>>>> package isi.esercitazione.java2wsdl;
>>>> import javax.xml.soap.MessageFactory;
>>>>
>>>> @ServiceMode(value=Mode.MESSAGE)
>>>> @WebServiceProvider(serviceName = "OrdineService",
>>>> portName = "OrdineInterfaceEndpoint",
>>>> targetNamespace = "http://www.rivenditore.org/Ordine",
>>>> wsdlLocation = "webapps/ese6/WEB-INF/ordini.wsdl")
>>>>
>>>> public class Server implements Provider<SOAPMessage>{
>>>> public SOAPMessage invoke(SOAPMessage req){
>>>>
>>>> SOAPMessage res = null;
>>>> try{
>>>> MessageFactory msgFac = MessageFactory.newInstance();
>>>> res = msgFac.createMessage();
>>>> SOAPFactory soapFac = SOAPFactory.newInstance();
>>>> SOAPBodyElement esito =
>>>> res.getSOAPBody().addBodyElement(soapFac.createName("esito", "ele",
>>>> "http://www.rivenditore.org/ordiniElements"));
>>>> SOAPElement ok = esito.addChildElement("ok");
>>>> SOAPElement id = ok.addChildElement("idOrdine");
>>>> id.setTextContent("123456");
>>>> SOAPElement totale = ok.addChildElement("totale");
>>>> totale.setTextContent("123.45");
>>>> totale.addAttribute(soapFac.createName("valuta"), "USD");
>>>>
>>>> }
>>>> catch(SOAPException soapex){
>>>> System.out.println("Errore SOAP: " + soapex);
>>>> soapex.printStackTrace();
>>>> }
>>>> catch(Exception ex){
>>>> System.out.println("Errore SOAP: " + ex);
>>>> ex.printStackTrace();
>>>> }
>>>>
>>>> return res;
>>>> }
>>>> }
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> Any tip?
>>>>
>>>>
>>>> Thx all,
>>>> Lorenzo
>>>
>>>
>>>
>>> --
>>> J. Daniel Kulp
>>> Principal Engineer, IONA
>>> dkulp@apache.org
>>> http://www.dankulp.com/blog
>>>
>>>
>>
>>
>
>
--
View this message in context: http://www.nabble.com/-CXF--deployment-problems-tp16627862p16678573.html
Sent from the cxf-user mailing list archive at Nabble.com.