【发布时间】:2015-02-21 10:37:01
【问题描述】:
我正在使用 Eclipse Juno 和 WildFly 8.2 并尝试使用 ws-security 部署 soap Web 服务。这是我的参考网站。
https://docs.jboss.org/author/display/JBWS/WS-Security#WS-Security-Authenticationandauthorization
部署正常!但问题似乎是Eclipse的客户端。我用eclipse ide做了一些jsp代码
<%@ page import="javax.xml.ws.BindingProvider"%>
<%@ page import="javax.xml.namespace.QName"%>
<%@ page import="java.net.URL"%>
<%@ page import="javax.xml.ws.Service"%>
<%@ page import="org.apache.cxf.ws.security.SecurityConstants"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>WildFly SOAP Security test</title>
</head>
<body>
<%
String SERVICE_URL = "http://localhost:8080/SOAPSecureWeb/HelloWorld";
try {
QName serviceName = new QName("http://soap.aaa.com/", "HelloWorldService");
URL wsdlURL;
wsdlURL = new URL(SERVICE_URL + "?wsdl");
Service service = Service.create(wsdlURL, serviceName);
IHelloWorld port = (IHelloWorld) service.getPort(IHelloWorld.class);
以上代码抛出简单异常,
生成的 java 文件中的第 12 行发生错误:只能导入一个类型。 org.apache.cxf.ws.security.SecurityConstants 解析为一个包
所以我将cxf-rt-ws-security-2.7.13.jar复制到/WEBContent/WEB-INF/lib,然后它抛出这个异常,甚至部署失败。
原因:org.jboss.as.server.deployment.DeploymentUnitProcessingException:JBAS015599:在ws端点部署中检测到Apache CXF库(cxf-rt-ws-security-2.7.13.jar);要么提供一个适当的部署来替换具有容器模块依赖关系的嵌入式库,要么为当前部署禁用 webservices 子系统,为其添加适当的 jboss-deployment-structure.xml 描述符。建议使用前一种方法,因为后一种方法会导致大多数 Web 服务 Java EE 和任何 JBossWS 特定功能被禁用。
我做了谷歌搜索和一些类似的问题。
Failed to process phase PARSE of deployment
WSDL based webservices on Wildfly
我在哪里可以找到一些有用的答案?
【问题讨论】:
标签: eclipse web-services cxf wildfly ws-security