Hi,
 
No it was fixed by me not calling init() during my component initialisation
phase. Works fine now Thx.
 
David

-----Original Message-----
From: Dan Diephouse [mailto:[EMAIL PROTECTED] 
Sent: 06 December 2006 04:00
To: [email protected]
Subject: Re: [xfire-user] AegisBindingProvider cannot find the xsi:type, but
it is there!


Hi David,
Any chance you can get a log of the SOAP messages being sent? That might
help figure out whats going on. There is some documentation on logging in
the user's guide. You could also use TCPMon to capture messages. 

Regards,
- Dan


On 12/5/06, David <[EMAIL PROTECTED]> wrote: 

Hi,

I noticed the missing super.init() as soon as I sent the email, but that is
not it. My Servlet class is an Avalon component and I was calling init()
during the intialize phase of the component, which is too early. Clearly 
Xfire calls it on the first request, after it has set up the
ServletContenxt.

David

-----Original Message-----
From: David [mailto:[EMAIL PROTECTED]
Sent: 05 December 2006 11:32
To: [email protected]
Subject: RE: [xfire-user] AegisBindingProvider cannot find the xsi:type, but
it is there!


Hi,

I re worked my embedding of XFire in my webapp as per the instructions -
http://xfire.codehaus.org/Embedding+XFire

I now get this

Thread [main] (Suspended (exception NullPointerException)) 
        XFireComponent(GenericServlet).getServletContext() line: 159
        XFireComponent(XFireServlet).createController() line: 97
        XFireComponent(XFireServlet).getController() line: 71
        XFireComponent.init () line: 49
        XFireComponent.initialize() line: 58
        ContainerUtil.initialize(Object) line: 282
        DefaultComponentFactory.newInstance() line: 323
        DefaultComponentHandler.doGet() line: 169 
        DefaultComponentHandler(ComponentHandler).get() line: 408
        ExcaliburComponentManager.lookup(String) line: 302
        TurbineAvalonComponentService.initialize() line: 188
        TurbineAvalonComponentService.init () line: 98
        TurbineServices(BaseServiceBroker).initService(String) line: 283
        TurbineServices(BaseServiceBroker).doInitService(String) line: 363
        TurbineServices(BaseServiceBroker).initServices(boolean) line: 335 
        TurbineServices(BaseServiceBroker).init() line: 152
        Turbine.configure(ServletConfig, ServletContext) line: 378
        Turbine.init() line: 191
        Turbine(GenericServlet).init(ServletConfig) line: 211 
        StandardWrapper.loadServlet() line: 1091
        StandardWrapper.load() line: 925
        StandardContext.loadOnStartup(Container[]) line: 3880
        StandardContext.start() line: 4141
        StandardHost(ContainerBase).start() line: 1012 
        StandardHost.start() line: 718
        StandardEngine(ContainerBase).start() line: 1012
        StandardEngine.start() line: 442
        StandardService.start() line: 450
        StandardServer.start () line: 680
        Catalina.start() line: 536
        NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not
available [native method]
        NativeMethodAccessorImpl.invoke(Object, Object[]) line: not 
available
        DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: not
available
        Method.invoke(Object, Object...) line: not available
        Bootstrap.start() line: 275
        Bootstrap.main (String[]) line: 413


My implemetation is

        public void init() throws ServletException {
                XFire xfire = XFireFactory.newInstance().getXFire();
            ObjectServiceFactory factory = new 
ObjectServiceFactory(xfire.getTransportManager(), null);
            //we don't want to expose compareTo
            factory.addIgnoredMethods("java.lang.Comparable");
            Service service =
factory.create(PaladyneService.class,"SearchSecurities", null, null);
                try {
                        service.setWSDLWriter(new ResourceWSDL(urlToWSDL));
                } catch (IOException e) { 
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                }
                service.setProperty(ObjectInvoker.SERVICE_IMPL_CLASS,
PaladyneComponent.class );
            //we register the service with the controller that handles soap
requests
                getController().getServiceRegistry().register(service);
        }

My web.xml part referring to this service is 

  <servlet>
    <servlet-name>XFire</servlet-name>
    <display-name>XFire Servlet</display-name>
    <servlet-class>XFireComponent</servlet-class>
  </servlet> 

  <servlet>
    <servlet-name>transformer</servlet-name>
    <servlet-class>org.apache.turbine.Turbine</servlet-class>
    <init-param>
      <param-name>properties</param-name> 
      <param-value>WEB-INF/conf/TurbineResources.properties</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping> 
    <servlet-name>transformer</servlet-name>
    <url-pattern>/servlet/transformer/*</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
    <servlet-name>XFire</servlet-name> 
    <url-pattern>/services/*</url-pattern>
  </servlet-mapping>

Am I missing a step? The servlet-class is correct, even tried it with the
fully qualified name com.stpenable.transformer.avalon.xfire.XFireComponent 
with no change to the exception

Thanks,

David



-----Original Message-----
From: David [mailto:[EMAIL PROTECTED]
Sent: 04 December 2006 12:40 
To: [email protected]
Subject: RE: [xfire-user] AegisBindingProvider cannot find the xsi:type, but
it is there!


Hi,

Not sure what to do to debug this, any suggestions? 

David

-----Original Message-----
From: David [mailto:[EMAIL PROTECTED]
Sent: 01 December 2006 12:28
To: [email protected]  <mailto:[email protected]> 
Subject: [xfire-user] AegisBindingProvider cannot find the xsi:type, but it
is there!


Hi,

Plugged in the XFire 1.2.2 when I had been using an earlier version. Did not
change my configuration at all, it had been working. Now when I hit any of 
the methods on the service and breakpoint them it never reaches them. Does
the targetNamespace have to be a real resolvable URL? I am getting this INFO
message in the logs, no exceptions.

2006-12-01 11:25:24,890 [http-8081-Processor24] INFO 
org.codehaus.xfire.aegis.AegisBindingProvider -
xsi:type="{http://soap.transformer.stpenable.com}OptionSearchParameters"; was
specified, but no corresponding Type was registered; defaulting to 
{http://www.w3.org/2001/XMLSchema}anyType

Now that xsi:type is in the WSDL

The WSDL is (removed the types not relevant to this query, it is a little 
large otherwise)


<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"; 
xmlns:soap11="http://schemas.xmlsoap.org/soap/envelope/";
xmlns:soap12="http://www.w3.org/2003/05/soap-envelope
<http://www.w3.org/2003/05/soap-envelope> "
xmlns:soapenc11="http://schemas.xmlsoap.org/soap/encoding/";
xmlns:soapenc12="http://www.w3.org/2003/05/soap-encoding
<http://www.w3.org/2003/05/soap-encoding> "
xmlns:tns="http://soap.transformer.stpenable.com";
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/
<http://schemas.xmlsoap.org/wsdl/soap/> "
xmlns:s="http://www.w3.org/2001/XMLSchema";
targetNamespace="http://soap.transformer.stpenable.com
<http://soap.transformer.stpenable.com> ">
<wsdl:types>
<s:schema targetNamespace="http://soap.transformer.stpenable.com";
elementFormDefault="qualified" attributeFormDefault="qualified"> 

..

<s:element name="getOptions">
<s:complexType>
<s:sequence maxOccurs="1" minOccurs="0">
<s:element name="getOptionsRequest" type="tns:OptionSearchParameters"> 
</s:element>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="getOptionsResponse">
<s:complexType>
<s:sequence maxOccurs="1" minOccurs="0"> 
<s:element name="GetOptionsResults" type="tns:ArrayOfOptionDTO">
</s:element> </s:sequence> </s:complexType> </s:element>

.

<s:complexType name="OptionSearchParameters"> 
<s:complexContent mixed="false">
<s:extension base="tns:BasicSearchParameters">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" default="-2147483648" name="Year" 
type="s:int" /> <s:element minOccurs="0" maxOccurs="1" default="-2147483648"
name="Month" type="s:int" /> <s:element minOccurs="0" maxOccurs="1" 
default="-79228162514264337593543950335" name="StrikePrice" type="s:decimal"
/> <s:element minOccurs="0" maxOccurs="1" name="OptionType" type="s:string" 
/> </s:sequence> </s:extension> </s:complexContent> </s:complexType>

.

</s:schema>
</wsdl:types>

.

<wsdl:message name="getOptionsResponse"> 
<wsdl:part element="tns:getOptionsResponse" name="getOptionsResponse" >
</wsdl:part> </wsdl:message> <wsdl:message name="getOptionsRequest">
<wsdl:part element="tns:getOptions" name="getOptions" > </wsdl:part> 
</wsdl:message>

.

<wsdl:operation name="getOptions">
<wsdl:input message="tns:getOptionsRequest"
name="getOptionsRequest"></wsdl:input>
<wsdl:output message="tns:getOptionsResponse" 
name="getOptionsResponse"></wsdl:output>
</wsdl:operation>

..

<wsdl:binding name="SearchSecuritiesHttpBinding"
type="tns:SearchSecuritiesPortType"> 
<wsdlsoap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"; /> <wsdl:operation
name="searchSecurities"> <wsdlsoap:operation soapAction="" /> 

..

<wsdl:operation name="getOptions">
<wsdlsoap:operation soapAction="" />
<wsdl:input name="getOptionsRequest">
<wsdlsoap:body use="literal" /> 
</wsdl:input>
<wsdl:output name="getOptionsResponse">
<wsdlsoap:body use="literal" />
</wsdl:output>
</wsdl:operation>

.

</wsdl:operation> 
</wsdl:binding>
<wsdl:service name="SearchSecurities">
<wsdl:port binding="tns:SearchSecuritiesHttpBinding"
name="SearchSecuritiesHttpPort">
<wsdlsoap:address 
location="http://localhost:8081/transformer/services/SearchSecurities"; />
</wsdl:port> </wsdl:service> </wsdl:definitions> 

My wsdl is resolvable
(http://localhost:8081/transformer/resources/SearchSecurities.wsdl)

So I am not sure what is missing. 


---------------------------------------------------------------------
To unsubscribe from this list please visit:

    http://xircles.codehaus.org/manage_email
<http://xircles.codehaus.org/manage_email> 



---------------------------------------------------------------------
To unsubscribe from this list please visit:

    http://xircles.codehaus.org/manage_email
<http://xircles.codehaus.org/manage_email> 



---------------------------------------------------------------------
To unsubscribe from this list please visit:

    http://xircles.codehaus.org/manage_email
<http://xircles.codehaus.org/manage_email> 



---------------------------------------------------------------------
To unsubscribe from this list please visit:

    http://xircles.codehaus.org/manage_email
<http://xircles.codehaus.org/manage_email> 






-- 
Dan Diephouse
Envoi Solutions
http://envoisolutions.com | http://netzooid.com/blog
<http://netzooid.com/blog> 

Reply via email to