Is there a way to override the binding name property?
For example
<service xmlns="http://xfire.codehaus.org/config/1.0">
<name>MyFulfillmentService</name>
<serviceClass>
com.myco.myapp.MyFulfillmentServiceImpl
</serviceClass>
<serviceFactory>#jsr181ServiceFactory</serviceFactory>
</service>
Results in a binding named MyFulfillmentServiceHttpBinding
The wsdl shows
<wsdl:binding name="MyFulfillmentServiceHttpBinding"
type="tns:MyFulfillmentServicePortType">
...
</wsdl:binding>
However, Our lightweight enterprise service bus requires the binding name to
be SomethingSoapBinding so I need MyFulfillmentServiceSoapBinding.
My current configuration uses annotations and resembles the following:
=== services.xml ===
<beans>
<bean name="jsr181ServiceFactory"
class="org.codehaus.xfire.annotations.AnnotationServiceFactory">
<constructor-arg ref="xfire.transportManager"
type="org.codehaus.xfire.transport.TransportManager"
index="0"/>
<constructor-arg ref="config" index="1"
type="org.codehaus.xfire.aegis.type.Configuration"/>
</bean>
<bean id="config" class="org.codehaus.xfire.aegis.type.Configuration">
<property name="defaultNillable" value="true"/>
<property name="defaultMinOccurs" value="1"/>
</bean>
<service xmlns="http://xfire.codehaus.org/config/1.0">
<name>MyFulfillmentService</name>
<serviceClass>
com.myco.myapp.MtFulfillmentServiceImpl
</serviceClass>
<serviceFactory>#jsr181ServiceFactory</serviceFactory>
</service>
</beans>
== web.xml ==
<web-app>
<servlet>
<servlet-name>XFireServlet</servlet-name>
<display-name>XFire Servlet</display-name>
<servlet-class>
org.codehaus.xfire.transport.http.XFireConfigurableServlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>XFireServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
</web-app>
== excerpts RemoteFulfillmentServiceImpl.java ==
import javax.jws.WebMethod;
import javax.jws.WebService;
@WebService
public class MyFulfillmentServiceImpl implements MyFulfillmentService {
// various private methods
@WebMethod
public String soemPublicMethod(final int someId) {
// maybe a couple lines of code
}
}
Thanks for the help.
~ mnereson
--
View this message in context:
http://www.nabble.com/override-binding-name-tf4629168.html#a13218105
Sent from the cxf-user mailing list archive at Nabble.com.