I'm using a Spring configuration and had a somewhat similar problem
yesterday. It was related to the servicefactory not having a defined
TransportManager. I ended up changing this :

            <bean id="typeRegistry"
class="org.codehaus.xfire.xmlbeans.XmlBeansTypeRegistry"/>
            <bean id="bindingProvider"
class="org.codehaus.xfire.aegis.AegisBindingProvider">
                <constructor-arg ref="typeRegistry"/>
            </bean>
            <bean id="xfireServiceFactory"
class="org.codehaus.xfire.service.binding.ObjectServiceFactory">
                <constructor-arg ref="bindingProvider"/>
            </bean>

into this :

          <bean id="typeRegistry"
class="org.codehaus.xfire.xmlbeans.XmlBeansTypeRegistry"
              init-method="createDefaultMappings" singleton="true">
          </bean>
          <bean id="bindingProvider"
class="org.codehaus.xfire.aegis.AegisBindingProvider" singleton="true">
            <constructor-arg index="0">
              <ref bean="typeRegistry" />
            </constructor-arg>
          </bean>
          <bean id="xfireServiceFactory"
class="org.codehaus.xfire.service.binding.ObjectServiceFactory"
singleton="true">
            <constructor-arg index="0">
              <ref bean="xfire.transportManager" />
            </constructor-arg>
            <constructor-arg index="1">
              <ref bean="bindingProvider" />
            </constructor-arg>
          </bean>

Maybe you can do something similar.


lendle wrote:
> 
> Hello, when using custom ServiceFactory, I always get wrong address
> location like
> "http://localhost/services/Echo"; in the generated wsdl
> while the correct location should be like
> "http://localhost:8080/TestXFire/services/Echo";
> 
> I have done some test, and found some thing interesting: if I use the
> following services.xml
> 
> <service>
> <name>IEchoService</name>
> <namespace>http://test</namespace>
> <serviceClass>test.IEchoService</serviceClass>
> <implementationClass>test.EchoService</implementationClass>
> <serviceFactory>org.codehaus.xfire.jaxws.JAXWSServiceFactory</serviceFactory>
> </service>
> 
> I can get correct address locatio, however, the following will generate
> wrong address:
> 
> <service>
> <name>IEchoService</name>
> <namespace>http://test</namespace>
> <serviceClass>test.IEchoService</serviceClass>
> <implementationClass>test.EchoService</implementationClass>
> <serviceFactory>test.MyServiceFactory</serviceFactory>
> </service>
> 
> however, MyServiceFactory is simply a modify-nothing extension of
> JAXWSServiceFactory
> the code of MyServiceFactory is:
> 
> 
> public class MyServiceFactory extends JAXWSServiceFactory
> {
> }
> 
> the result is really weired, therefore I post this here, thanks!
> 
> ---------------------------------------------------------------------
> To unsubscribe from this list please visit:
> 
>     http://xircles.codehaus.org/manage_email
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/wrong-address-location-in-generated-wsdl-for-custom-ServiceFactory-tf3589073.html#a10031601
Sent from the XFire - User mailing list archive at Nabble.com.


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

    http://xircles.codehaus.org/manage_email

Reply via email to