2010-01-11 88 views
2

我使用jax-ws commons网站上的教程开发了带有jax-ws和Spring的Web服务。它向你展示了如何从你的spring applicationContext文件中定义和引用你的服务(https://jax-ws-commons.dev.java.net/spring/)。为什么jax-ws spring服务引用以#为前缀,如在ws中:service bean =“#myService”

引用Web服务时“#”的原因是什么?我希望看到更多的东西

<ws:service name="myEventWS" ref="eventWebService"/> 

但以下示例在上述链接我创建了以下工作。

<bean id="eventWebService" class="com.myws.EventWS"> 
    <property name="model" ref="EventModel"/> 
</bean> 

<wss:binding url="/EventWS"> 
    <wss:service> 
     <ws:service bean="#eventWebService"/> 
    </wss:service> 
</wss:binding> 

回答

2

<ws:service>是使用custom configuration namespace,这是一个让你使用更简单的命名空间来表达复杂的豆图形春天的一个特征。这些自定义命名空间的含义和解释取决于所讨论的实现,在这种情况下是JAX-WS-Commons项目。看来这个作者决定bean=#eventWebService意味着你所说的ref="eventWebService"

我不知道他们是这样做的,也许他们认为它更具可读性......也许他们认为bean=eventWebService(没有散列)意味着一个名称,而不是一个参考......我不'不知道。文件也不是很清楚。无论哪种方式,我敢肯定它不是核心的Spring语法,也不是我以前见过的约定。

0

“#”告诉bean它不是一个类,而是一个ref。

HTH

0

#eventWebServiceEventWebService类型的豆(根据默认弹簧未指定豆当命名约定)。

相关问题