History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: XFIRE-1044
Type: Bug Bug
Status: Open Open
Priority: Major Major
Assignee: Dan Diephouse
Reporter: Motwani
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
XFire

Use of Spring ServiceBean to configure custom end point

Created: 19/Jun/07 12:37 PM   Updated: 19/Jun/07 12:37 PM
Component/s: Spring
Affects Version/s: 1.2.5, 1.2.6
Fix Version/s: 1.2.5, 1.2.6, 1.2.7

Time Tracking:
Not Specified

Environment: Tried on Windows XP Pro SP2 and Linux Ubuntu distribution. Intel Core Duo


 Description  « Hide
I want to configure the xfire generated wsdl to have custom end points instead of the default end point which it configures from the request URI.

I was able to remove the default by doing the following in the appCtx:

<bean name="myService" class="org.codehaus.xfire.spring.ServiceBean">
<property name="createDefaultBindings" value="false" />
<property name="serviceBean" ref="myServiceFacade"/>
<property name="serviceClass" value="com.cj.service.link.MyServiceClass"/>
<property name="name" value="myServiceName"/>
<property name="inHandlers">
<list>
<ref bean="addressingHandler"/>
</list>
</property>
<property name="serviceFactory" ref="xfire.annotationServiceFactory"/>
</bean>

The above configuration removed the default port binding. Then i tried to add a custom binding by the following method:
========================================================================================================================
<bean name="myService" class="org.codehaus.xfire.spring.ServiceBean">
<property name="bindings" ref="soap11BindingBean" />
<property name="createDefaultBindings" value="false" />
<property name="serviceBean" ref="myServiceFacade"/>
<property name="serviceClass" value="com.cj.service.link.MyServiceClass"/>
<property name="name" value="myServiceName"/>
<property name="inHandlers">
<list>
<ref bean="addressingHandler"/>
</list>
</property>
<property name="serviceFactory" ref="xfire.annotationServiceFactory"/>
</bean>

<bean name="soap11BindingBean" class="org.codehaus.xfire.spring.config.Soap11BindingBean" >
<property name="endpoints">
<list>
<ref bean="endPoint" />
</list>
</property>
<property name="allowUndefinedEndpoints" value="false" /> <!-- i tried true also but no effect -->
<property name="transport" value="http://schemas.xmlsoap.org/soap/http" />
</bean>

<bean name="endPoint" class="org.codehaus.xfire.spring.config.EndpointBean">
<property name="name" ref="qName" />
<property name="url" value="https://abc.google.com" />
</bean>

<bean name="qName" class="javax.xml.namespace.QName">
<constructor-arg>
<value> cj.com</value>
</constructor-arg>
</bean>

==========================================================================================================================

The following are the issues:

1) With the above configuration, i was able to add my new custom end point "https://abc.google.com" but the default binding also shows up. The default binding shouold not show up since "createDefaultBindings" is set to "false"

2) If i configure multiple custom end points, only the last one shows up along with the default binding.



 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
There are no comments yet on this issue.