我创建了一个 cxf/spring 项目:
mvn archetype:create -DarchetypeGroupId=org.apache.cxf.archetype -DarchetypeArtifactId=cxf-jaxws-javafirst
生成的项目有一个用 @WebService 注释的 HelloWorld.java 接口和一个用 endpointInterface=mypackage.HelloWorld 注释的 HelloWorldImpl.java。
有一个 beans.xml 文件包含:
<jaxws:endpoint
id="helloWorld"
implementor="mypackage.HelloWorldImpl"
address="/HelloWorld" />
如果我想添加更多服务,看起来我应该继续在 beans.xml 中添加新端点。由于这些类已经被注释为@WebService,为什么它不能在某些包/搜索路径中自动发现任何新服务?有什么方法可以配置这个项目来做到这一点?
基本上,我只是想避免重复自己。信息已经在注释中,所以我不想每次添加服务时都编辑其他文件。
如果我删除 beans.xml 中的 jaxws:endpoint 标记,然后mvn install tomcat:run
localhost:8080/myArtifactId 只会显示一个页面,说明没有定义服务。