如何在WebService的运行时更改NameSpaceUri以将其指向不同的endPoint?

时间:2013-02-25 11:39:14

标签: web-services spring jax-ws spring-ws

我正在使用org.springframework.remoting.jaxws.JaxWsPortProxyFactoryBean来配置我的客户端WebService,但是我无法更改接口targetNameSpaceUri以使其指向不同的URL。

使用<property name="namespaceUri" value="http://localhost:9191/my/" />并没有这样做。

我的配置看起来像这样

    <bean id="myService" class="org.springframework.remoting.jaxws.JaxWsPortProxyFactoryBean">
        <property name="namespaceUri" value="http://localhost:9191/my/" />          
        <property name="serviceName" value="my" />
        <property name="portName" value="myPort" />
        <property name="serviceInterface" value="br.com.asis.my.myService" />           
        <property name="wsdlDocumentUrl" value="http://localhost:9191/my/?wsdl" />
        <property name="lookupServiceOnStartup" value="false" />
    </bean>     
    <bean id="myHandler" class="br.com.cflex.asis.my.myHandler">
        <property name="service"            ref="myService"></property>
    </bean>

我有br.com.asis.my.myService接口和这个注释。

@WebService(name = "myService")
public interface myService {

/**
 * 
 * @param message
 * @return
 *     returns java.lang.String
 */
@WebMethod(operationName = "Sendmessages")
@WebResult(targetNamespace = "")
@RequestWrapper(localName = "Sendmessages", className = "br.com.asis.my.Sendmessages")
@ResponseWrapper(localName = "SendmessageResponse", className = "br.com.asis.my.SendmessageResponse")
public String sendmessages(
    @WebParam(name = "message")
    message message);

}

但改变

<property name="namespaceUri" value="http://localhost:9191/my/" />

在我的Spring配置中,不会更改服务URI,我希望能够更改它并将其应用于我的所有客户端服务接口,而不必使用这样的注释

@WebService(name = "myService", targetNamespace="http://localhost:9191/myService/")

有可能吗?

0 个答案:

没有答案