Can anyone tell if this is a bug or not so I can fill a JIRA issue ?

regards,

chris

christophe blin wrote:
> 
> Hi,
> 
> first, thanks for the answer, I did not know this technique (i.e 1 wsdl
> for many services).
> I did not try it because :
> - my 2 services have exactly the same methods (they implement the same
> interface, only the implementations change).
> - I want to be able to select the implementation from the url of the
> service : if I use localhost/Service1 in my request, I want to use the
> implementation given by Service1.
> 
> so if I use the federated services, I will not be able to choose Service1
> or Service2 from the URL.
> 
> So I do not want 1 wsdl with the methods of the 2 services, I want
> distinct services (again that I can select with URL) that implements the
> same methods but in a differrent way.
> 
> Do not hesitate to ask for explanation about my use case or other
> technicals details if needed.
> 
> regards,
> 
> chris
> 
> 
> Sergei Emelianov wrote:
>> 
>> I had the following configuration
>> 
>> 
>> <bean id="serviceMgr" class="globalization.WebServiceManager">
>>         <property name="webServices">
>>             <list>
>>                 <ref bean="client1"/>
>>                 <ref bean="client2"/>
>>             </list>
>>         </property>
>>     </bean>
>> 
>>     <!-- XFire clients -->
>>     <bean id="client1" class="
>> org.codehaus.xfire.spring.remoting.XFireClientFactoryBean">
>>         <property name="serviceClass">
>>             <value>x.ws.xfire.FederatedService</value>
>>         </property>
>>         <property name="wsdlDocumentUrl" value="
>> http://black:8080/Oculus5/services/FederatedService?wsdl"/>
>>         <property name="url" value="
>> http://black:8080/Oculus5/services/FederatedService"; />
>>     </bean>
>> 
>>     <bean id="client2" class="
>> org.codehaus.xfire.spring.remoting.XFireClientFactoryBean">
>>         <property name="serviceClass">
>>             <value>x.ws.xfire.FederatedService</value>
>>         </property>
>>         <property name="wsdlDocumentUrl" value="
>> http://localhost:8080/Oculus5/services/FederatedService?wsdl"/>
>>         <property name="url" value="
>> http://localhost:8080/Oculus5/services/FederatedService"; />
>>     </bean>
>> 
>> Then I was able to obtain list of all endpoints to external web services,
>> yet It was possible to reffer to each of them by list.get(int i).
>> 
>> I am sorry if you ment something else. To me list<webservices> sounds
>> like a
>> better idea.
>> 
>> 
>> Regards.
>> 
>> 
>> On 12/29/06, christophe blin <[EMAIL PROTECTED]> wrote:
>>>
>>>
>>> Hi,
>>>
>>> in xfire-servlet.xml, if you do :
>>> <bean
>>> class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
>>>     <property name="urlMap">
>>>       <map>
>>>         <entry key="/Service1">
>>>           <ref bean="service1XFire" />
>>>         </entry>
>>>         <entry key="/Service2">
>>>           <ref bean="service2XFire" />
>>>         </entry>
>>>     </map>
>>>   </property>
>>> </bean>
>>>
>>>
>>> <bean id="service1XFire"
>>>     class="org.codehaus.xfire.spring.remoting.XFireExporter">
>>>     <property name="serviceFactory">
>>>       <ref bean="xfire.serviceFactory" />
>>>     </property>
>>>     <property name="xfire">
>>>       <ref bean="xfire" />
>>>     </property>
>>>     <property name="serviceBean">
>>>       <ref bean="service1Bean" />
>>>     </property>
>>>     <property name="serviceClass">
>>>       <value>com.tennaxia.t3.IService</value>
>>>     </property>
>>>   </bean>
>>>
>>> <bean id="service2XFire"
>>>     class="org.codehaus.xfire.spring.remoting.XFireExporter">
>>>     <property name="serviceFactory">
>>>       <ref bean="xfire.serviceFactory" />
>>>     </property>
>>>     <property name="xfire">
>>>       <ref bean="xfire" />
>>>     </property>
>>>     <property name="serviceBean">
>>>       <ref bean="service2Bean" /> <!-- ***************************
>>> DIFFERENT
>>> -->
>>>     </property>
>>>     <property name="serviceClass">
>>>       <value>com.tennaxia.t3.IService</value> <!--
>>> *************************** SAME -->
>>>     </property>
>>>   </bean>
>>>
>>> then, even if you call localhost/Service1 you will always use the
>>> service2Bean.
>>>
>>> If you inverse the 2 entries in the UrlMapper, then it is always the
>>> service1Bean that is called (i.e even if you called localhost/Service2)
>>>
>>> Do not know if this is  a bug or not as I do not have any time to digg
>>> into
>>> the xfire code.
>>>
>>> My workaround is to decalre 2 separate interfaces taht extends the
>>> IService
>>> interface and then to use these 2 different name in the serviceClass
>>> property
>>>
>>> Best regards,
>>>
>>> chris
>>> --
>>> View this message in context:
>>> http://www.nabble.com/Problem-with-Spring-remote-tf2895026.html#a8088333
>>> Sent from the XFire - User mailing list archive at Nabble.com.
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe from this list please visit:
>>>
>>>     http://xircles.codehaus.org/manage_email
>>>
>>>
>> 
>> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Problem-with-Spring-remote-tf2895026.html#a8137607
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