标签: wsdl2java

为什么WSDL解析器仍然导入外部文档?

我试图以API文档建议的方式关闭导入WSDL4J(1.6.2)中的文档:

  wsdlReader.setFeature("javax.wsdl.importDocuments", false);
Run Code Online (Sandbox Code Playgroud)

实际上,它会停止导入使用wsdl:import标记声明的XML模式文件,但会停止导入使用xs:import标记声明的文件.

以下代码片段[请参阅信函末尾]以获取示例文件

http://www.ibspan.waw.pl/~gawinec/example.wsdl

返回以下异常:

javax.wsdl.WSDLException: WSDLException (at /definitions/types/xs:schema):
faultCode=OTHER_ERROR: An error occurred trying to resolve schema referenced
at 'EchoExceptions.xsd', relative to
'http://www.ibspan.waw.pl/~gawinec/example.wsdl'.:
java.io.FileNotFoundException: This file was not found:
http://www.ibspan.waw.pl/~gawinec/EchoExceptions.xsd
    at com.ibm.wsdl.xml.WSDLReaderImpl.parseSchema(Unknown Source)
    at com.ibm.wsdl.xml.WSDLReaderImpl.parseSchema(Unknown Source)
    at com.ibm.wsdl.xml.WSDLReaderImpl.parseTypes(Unknown Source)
    at com.ibm.wsdl.xml.WSDLReaderImpl.parseDefinitions(Unknown Source)
    at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
    at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
    at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
    at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
    at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
    at IsolatedExample.main(IsolatedExample.java:15)
Caused by: java.io.FileNotFoundException: This file was not found:
http://www.ibspan.waw.pl/~gawinec/EchoExceptions.xsd
    at com.ibm.wsdl.util.StringUtils.getContentAsInputStream(Unknown Source)
    ... 10 more …
Run Code Online (Sandbox Code Playgroud)

java parsing wsdl web-services wsdl2java

6
推荐指数
1
解决办法
3112
查看次数

默认情况下跳过maven2插件

我正在寻找一种不在安装时执行插件的方法.更具体地说,我的方案如下:

  1. 我正在使用org.apache.cxf:cxf-codegen-plugin来生成源代码.
  2. 每次我清理+安装源都会生成
  3. 我只想在明确请求时生成源代码.

任何和所有的帮助将不胜感激!

maven-2 cxf wsdl2java jax-ws

6
推荐指数
1
解决办法
2615
查看次数

如何调试Wsdl2Java Jaxb错误"声明导致冲突"

我有一个由.NET生成的wsdl,我试图在java应用程序中使用它.为此,我尝试使用CXF Wsdl2Java工具.问题是当工具运行时,它会抛出一个jaxb异常:

Thrown by JAXB: Two declarations cause a collision in the ObjectFactory class.
Run Code Online (Sandbox Code Playgroud)

我知道我可能需要创建一个自定义绑定文件来在构建时重命名对象,但我不知道从哪里开始.如何找出wsdl中的哪些对象导致问题?

(如果异常实际上说哪些元素导致了命名冲突,那似乎会很好)

cxf wsdl2java jaxb

6
推荐指数
1
解决办法
4861
查看次数

Axis Marshaller

我有一组使用wsdl2java(Axis 1.4)创建的类,我正在寻找一种方法来解组和编组来自/到String和Object的数据.我编写了一个JAXB unmarshaller,它适用于我们的一些较新的内部对象,因为我们使用xjc来创建类,但没有时间转换旧的轴类,需要为代码找到一个marshal/unmarshal解决方案. .

请有人指点我的方向.

谢谢!

java axis wsdl2java marshalling unmarshalling

6
推荐指数
1
解决办法
3240
查看次数

发布wsdl java M2E插件执行未涵盖

我编写了一个WSDL,我想生成java类.

我为maven2 使用cxf-codegen-plugin,但是我在Eclipse中遇到以下验证错误:

生命周期配置未涵盖插件执行:org.apache.cxf:cxf-codegen-plugin:2.2.7:wsdl2java(执行:generate-sources,phase:generate-sources).

有人可以帮我解决这个问题吗?或提出另一种解决方案

wsdl maven-2 wsdl2java

6
推荐指数
2
解决办法
1万
查看次数

如何从WSDL动态自动生成Java Bean?

我想开发一个测试Web服务的应用程序,它将使用提供的WSDL中的参数自动生成JSF表单.

WSDL URL由用户提供,在解析之前我不知道操作的名称.我希望应用程序完成解析后的操作及其参数,并自动生成相应的Java Bean,我将使用它来生成JSF表单.

我测试了CXF和JAX-WS,但我认为他们需要在生成Java bean之前知道操作名称.如何透明地为任何WSDL生成Java Bean?手动运行wsdl2java不是解决方案.

java wsdl cxf wsdl2java jax-ws

6
推荐指数
1
解决办法
3044
查看次数

IntelliJ Idea 11-没有菜单从WSDL生成Java代码

尽管启用了Web服务支持,但是在工具-> WebServices中看不到“ 从WSDL生成Java代码 ”菜单项。我需要为此安装任何插件或其他东西吗?

wsdl2java intellij-idea

6
推荐指数
1
解决办法
1万
查看次数

如何以线程安全的方式使用CXF客户端

我使用apache-cxf的wsdl2java命令为以下服务创建了客户端存根. http://wsf.cdyne.com/WeatherWS/Weather.asmx?WSDL


然后我调用如下getWeatherInformation()方法.

Weather weatherService = new Weather();
WeatherSoap weatherSoap = weatherService.getWeatherSoap();
ArrayOfWeatherDescription result = weatherSoap.getWeatherInformation();
Run Code Online (Sandbox Code Playgroud)

我已经读过cxf客户端是线程安全的.但我怀疑WeatherSoap在多个线程中使用相同的实例是否安全?或者我应该/可以使用Weather多个线程的类实例吗?谢谢.

编辑:


我所做的是我向公众公开了RESTful API,如果有人称之为休息服务,我会调用另一个SOAP服务.上面的代码用于调用SOAP服务.我想知道的是我应该为每个休息请求执行以上所有行,还是可以重用所有REST请求的实例WeatherWeatherSoap服务所有REST请求.

java wsdl web-services cxf wsdl2java

6
推荐指数
1
解决办法
5465
查看次数

CUCM AXL API错误的SoapAction

我想对CUCM DB进行SQL查询.我使用Maven jaxb2插件从WSDL生成Java类,但Cisco AXL docs建议使用wsdl2java.我有很多带有Req/Res结尾的Java类(据我所知,请求和响应).这是我的代码:

public class CUCMDatabaseConnector extends WebServiceGatewaySupport{
    private String SOAP_ACTION = "CUCM:DB ver=10.5";    

    public void updateData(){
            String END_USERS_REQUEST = REQUEST,
                    AXLurl = "https://" + properties.getCurrentCUCM_IP() + ":8443/axl/";

            ExecuteSQLQueryReq sqlRequest = new ExecuteSQLQueryReq();
            sqlRequest.setSql(END_USERS_REQUEST);

            WebServiceTemplate template = getWebServiceTemplate();
            template.setMessageSender(NullHostnameVerifier.getMessageSender());
            ExecuteSQLQueryRes sqlResponse = (ExecuteSQLQueryRes) template
                    .marshalSendAndReceive(
                            AXLurl, 
                            sqlRequest,
                            new WebServiceMessageCallback() {
                                @Override
                                public void doWithMessage(WebServiceMessage message) throws IOException, TransformerException {
                                    TransportContext context = TransportContextHolder.getTransportContext();
                                    HttpUrlConnection connection = (HttpUrlConnection) context.getConnection();

                                    //adding required headers
                                    connection.addRequestHeader( "SOAPAction", SOAP_ACTION);
                                    connection.addRequestHeader("Authorization", autenString);
                                }
                           } …
Run Code Online (Sandbox Code Playgroud)

spring soap wsdl2java maven cucm

6
推荐指数
1
解决办法
849
查看次数

apache cxf-codegen-plugin wsdl2java相对wsdlLocation

当我指定每个文件时,我能够使用带有相对wsdlLocation的生成类,例如 <wsdlOptions> <wsdlOption> <wsdl>${basedir}/src/main/resources/sample.wsdl</wsdl> <wsdlLocation>classpath:wsdl/sample.wsdl</wsdlLocation> </wsdlOption> </wsdlOptions>

相反,我想使用<wsdlRoot>所以我不需要指定生成类的每个wsdl.

例如

<wsdlRoot>${basedir}/src/main/resources/wsdl</wsdlRoot> <includes> <include>*.wsdl</include> </includes>

这适用于为目录中的每个wsdl生成类,但是,生成的类中的wsdlLocation是wsdl在我的机器上的绝对路径.我想要一个相对路径,所以代码更便携.使用wsdlRoot时是否可以指定相对wsdlLocation?

谢谢

wsdl cxf wsdl2java maven cxf-codegen-plugin

6
推荐指数
1
解决办法
637
查看次数