无论如何我可以告诉glassfish 3禁用地铁吗?我目前正在使用 CXF 作为我的库。CXF 正在运行,但它也在发布自己的 Web 服务。
无论如何,我可以告诉 glassfish 不要发布这些额外的 Web 服务吗?这些是 @WebService 注释的 benans
我尝试声明一个包含此内容的 sun-web.xml,但它仍然无法正常工作
Glassfish 3 我自动发布它,它创建了两个 Web 服务实例,而不是一个。
多谢
无论如何我可以告诉glassfish 3禁用地铁吗?我目前正在使用 CXF 作为我的库。CXF 正在运行,但它也在发布自己的 Web 服务。
无论如何,我可以告诉 glassfish 不要发布这些额外的 Web 服务吗?这些是 @WebService 注释的 benans
我尝试声明一个包含此内容的 sun-web.xml,但它仍然无法正常工作
Glassfish 3 我自动发布它,它创建了两个 Web 服务实例,而不是一个。
多谢
如果没有这个 sun-web.xml 文件来配置类加载器,CXF 拦截器将无法在 Glassfish 中工作。默认情况下,Glassfish 将 Metro 用于 JAX-WS 服务,因此需要将类加载器配置为允许 CXF 库提供 JAX-WS 服务。以下 sun-web.xml xml 源已添加到 /WEB-INF 以解决此问题:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sun-web-app PUBLIC '-//Sun Microsystems, Inc.//DTD
Application Server 9.0 Servlet 2.5//EN'
'http://www.sun.com/software/appserver/dtds/sun-web-app_2_5-0.dtd'>
<sun-web-app>
<class-loader delegate="false"/>
</sun-web-app>
来自 CXF 网站的解释: http: //cxf.apache.org/docs/application-server-specific-configuration-guide.html#ApplicationServerSpecificConfigurationGuide-Glassfish
要禁用 Metro 监控,请转到管理控制台,配置 -> 服务器配置,然后添加以下 JVM 选项:
-Dcom.sun.xml.ws.monitoring.endpoint=false
重新启动服务器以应用此设置。