标签: axis2

Axis2并以自下而上的方式自定义XML模式

我使用axis2从我创建的java类创建Web服务.一切都运作良好,但我希望能够自定义wsdl,我无法弄清楚如何做到这一点.我尝试使用一些JAXB注释与我的对象(使用axis1),但它对wsdl生成没有影响.

我希望能够为某些元素指定nillable = true并使其他元素成为必需.我也希望能够更改元素名称和其他内容.如果META-INF文件夹中没有包含WSDL,那么axis2不应该查看JAXB2.0注释吗?

我一直试图谷歌如何以自下而上的方式绘制架构,但我没有运气.axis2网站仅显示创建Web服务或客户端的基本步骤,但没有关于自定义架构的信息.

java xsd axis2 web-services

5
推荐指数
1
解决办法
2028
查看次数

如何在Axis2 JAX-WS服务(提供者端)中启用WS-Security(Rampart)?

在Axis2中部署JAX-WS服务时是否可以指定安全策略断言?到目前为止,我发现只有一种方法是全局配置策略(即在axis2.xml中).但它可以在JAXWS JAR中完成吗?

java axis2 jax-ws rampart

5
推荐指数
1
解决办法
1589
查看次数

不理解 WCF Web 服务、Java Web 客户端、MustUnderstand 标头?

我使用以下 WSDL 托管 WCF Web 服务(使用 wsHttpBinding 和 SSL 实现传输安全的简单服务):

<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex" xmlns:wsa10="http://www.w3.org/2005/08/addressing" xmlns:tns="http://tempuri.org/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" name="MagicEightBallService" targetNamespace="http://tempuri.org/">
  <wsp:Policy wsu:Id="WSHttpBinding_TransportSecurity_IMagicEightBallService_policy">
    <wsp:ExactlyOne>
      <wsp:All>
        <sp:TransportBinding xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
          <wsp:Policy>
            <sp:TransportToken>
              <wsp:Policy>
                <sp:HttpsToken RequireClientCertificate="false"/>
              </wsp:Policy>
            </sp:TransportToken>
            <sp:AlgorithmSuite>
              <wsp:Policy>
                <sp:Basic256/>
              </wsp:Policy>
            </sp:AlgorithmSuite>
            <sp:Layout>
              <wsp:Policy>
                <sp:Strict/>
              </wsp:Policy>
            </sp:Layout>
          </wsp:Policy>
        </sp:TransportBinding>
        <wsaw:UsingAddressing/>
      </wsp:All>
    </wsp:ExactlyOne>
  </wsp:Policy>
  <wsdl:types>
    <xsd:schema targetNamespace="http://tempuri.org/Imports">
      <xsd:import schemaLocation="http://my.local.domain.name/MagicEightBall/MagicEightBallService.svc?xsd=xsd0" namespace="http://tempuri.org/"/>
      <xsd:import schemaLocation="http://my.local.domain.name/MagicEightBall/MagicEightBallService.svc?xsd=xsd1" namespace="http://schemas.microsoft.com/2003/10/Serialization/"/>
    </xsd:schema>
  </wsdl:types>
  <wsdl:message name="IMagicEightBallService_GetAdvice_InputMessage">
    <wsdl:part name="parameters" element="tns:GetAdvice"/>
  </wsdl:message>
  <wsdl:message name="IMagicEightBallService_GetAdvice_OutputMessage">
    <wsdl:part name="parameters" element="tns:GetAdviceResponse"/>
  </wsdl:message> …
Run Code Online (Sandbox Code Playgroud)

wcf axis2 jax-ws soapfault

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

使用带有自己的安全框架的axis2 ramaprt模块

我在我的项目中使用axis2实现了webservice(服务器端).我们希望在现有Web服务中启用WS-security.我们正在评估apache ramapart模块是否符合我们的需求.这是我们的要求:基本上我们有内部安全框架,提供加密,签名和令牌生成功能.我们的内部安全框架基本上需要以XML形式的一组配置,并且它公开各种API以执行各种安全操作.

现在有了上述环境,我可以想到三种可能的解决方案: -

  1. 我可以围绕内部安全框架开发一个axis2模块,并在安全阶段将其安装为.mar文件.所以我不会使用apache rampart.但是这种方法的问题是我不能使用ws-security策略来指定安全断言并确保传入的安全性令牌符合有效的策略.这就像重新发明轮子已经做的那样.

  2. 我相信apache rampart强调要求apache wss4j模块进行安全操作.我相信apache wss4j模块提供了一种注册第三方安全提供程序的方法(通过实现CryptoProvider接口).我不确定这是否是可行和可行的解决方案.请建议.

  3. Ws-security策略允许使用自定义令牌.可以使用我们的内部安全框架构建此自定义令牌.所以基本上它使我们能够使用apache rampart模块创建ws-security策略,并使用我们的安全框架开发自定义令牌.但我在互联网上找不到这方面的帮助.有谁可以帮助举例.

任何其他建议也是最受欢迎的.

java ws-security axis2 web-services rampart

5
推荐指数
1
解决办法
500
查看次数

wsdl2java客户端存根仅用于wsdl支持的某些操作?

使用Axis2 Wsdl2Java:有没有办法从wsdl生成相关的客户端代码,但只能用于wsdl中受支持的操作的子集.

也就是说,如果wsdl说过一个有争议的操作,那么只能为一个或两个感兴趣的操作生成客户端存根代码?

我已经为客户WSDL生成了客户端存根,并且生成的存根和支持代码对于我的目的来说太大了> 75MB.

我使用了带有-U选项的Axis2 Wsdl2Java来解压缩绑定,并且由于在尝试使用ADB时出现解析错误,我还必须使用XML bean绑定.

谢谢,

由于我没有收到太多关于此的反馈:我将编辑这个来重述问题,(因为我真的不关心解决方案是如何得出的).

基本上我真正的问题是我正在生成一个相当大的WAR文件,该文件在Tomcat7.0中使用客户端并且它消耗了大量内存.

也许,我不需要/不应该在WAR中捆绑所有生成的类.但在我看来,这些是Stub生成的不可或缺的部分,我相信有一个更优雅的解决方案,而不是我手动挑选出来的东西?

所以我想以另一种方式重述问题:Axis2正在生成一个非常大的WAR文件,它消耗了大量的Tomcat资源.如何缩小此WAR以使其更小/"更轻量级"WAR.

谢谢,

wsdl axis2 wsdl2java xmlbeans

5
推荐指数
1
解决办法
1173
查看次数

Office365 Sharepoint Webservices通过Java访问 - Axis2

我们目前正在构建一个基于Java的服务器,它可以通过Axis2与Sharepoint 2007/2010和Office365版本的Web服务进行交互.我们似乎可以使用Basic/NTLM身份验证来使用Sharepoint 2007/2010,但不能使用Office365版本.

这可能是因为Office365版本仅支持基于声明的身份验证.我们可以实际从Java进行身份验证吗?是否有基于声明的身份验证的开源支持?

sharepoint axis2 ntlm claims-based-identity office365

5
推荐指数
1
解决办法
1160
查看次数

Axis和Axis2之间的区别,以开发Web服务

在我的项目中,我将不得不基于Web服务技术开发一些数据输入/输出接口.所以到现在为止我已经研究过了.

我对使用Java的Web服务感到好奇的是我可以使用或不使用的库.

当我搜索java库时,我发现Axis2和CXF是非常常见且着名的java w/s库.问题是我必须使用包含轴的RAD 7.0.

似乎Axis和Axis2之间存在巨大的变化,不幸的是我无法使用Axis2.

现在,我的合作伙伴提供了WSDL,我必须实现客户端W/S. 如果我通过Axis或Axis2或CXF从WSDL创建客户端代理代码,它们是否都是相同的代码?

或者如果我必须使WSDL为Axis提供我的W/S接口,那么Axis2或CXF用户是否会遇到问题?

在我的情况下,我很新,害怕使用Axis.谁能给我一些建议?

谢谢.

祝你有美好的一天.

axis axis2 rad

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

在eclipse中"在安装axis2 core 1.1时失败了"?

各位我好,我正在使用java web服务,我需要使用轴2.我按照一些教程来解决这个问题..

我遵循的步骤

1)我选择了Windows选项,然后选择了子选项 - >首选项.

2)然后我选择了轴Web服务并选择轴运行时间.

3)然后我给了我的axis2二进制文件的路径,我得到了"Axis2 Loaded successfully"消息.

4)然后我用模块2.5创建动态Web项目然后处理接下来我得到了这个错误.

在此输入图像描述

我从3天开始在网上旅行,但没有找到任何解决方案.

java apache axis2 web-services

5
推荐指数
1
解决办法
6286
查看次数

添加安全标头

我试图以下面的格式在Java Axis2客户端中生成安全头.

<soapenv:Header>
    <wsse:Security soapenv:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
        <wsu:UsernameToken wsu:Id="UsernameToken-2" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
            <wsu:Username>xxx</wsu:Username>
            <wsu:Password Type="wsse:PassowrdTest">xxx</wsu:Password>
        </wsu:UsernameToken>
    </wsse:Security>
</soapenv:Header>
Run Code Online (Sandbox Code Playgroud)

以下是我目前的代码:

SOAPHeaderElement wsseSecurity = new SOAPHeaderElement(
        new PrefixedQName("http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd","Security", "wsse"));         
wsseSecurity.setMustUnderstand(true);
wsseSecurity.setActor(null); 

SOAPElement sub =wsseSecurity.addChildElement("UsernameToken");
sub.setAttribute("wsu:Id", "UsernameToken-2");

SOAPElement userElement = sub.addChildElement("Username");
userElement.addTextNode("xxx"); 

SOAPElement pwdElement = sub.addChildElement("Password");
pwdElement.setAttribute("Type", "wsse:PasswordText");
pwdElement.addTextNode("xxx");

stub.setHeader(wsseSecurity);
Run Code Online (Sandbox Code Playgroud)

java axis2 stub

5
推荐指数
1
解决办法
2217
查看次数

使用Axis2的Spring Boot应用程序 - /BOOT-INF/lib/addressing-1.6.2.mar文件无法找到

在SOAP调用期间我得到一个以下异常,但在本地我没有得到任何异常.

我真的不确定为什么寻址-1.6.2.mar引用应用程序jar路径.

Axis2结构:

在此输入图像描述

VM参数:

JAVA_HOME=/apps/jdk/jdk1.8.0_111

ANTIFRAUD_HOME=/apps/Benefits/AntiFraud/r20/dev

nohup $JAVA_HOME/bin/java-Dspring.profiles.active=dev -Dspring.config.location=file:$ANTIFRAUD_HOME/properties/application.properties -Dlogging.config=file:$ANTIFRAUD_HOME/properties/log4j2.xml -Djava.security.auth.login.config=file:$ANTIFRAUD_HOME/properties/kafka-client-jaas.conf -DConfigPath=$ANTIFRAUD_HOME/hasbroResources -Daxis2.repo=$ANTIFRAUD_HOME/hasbroResources/resources/axis2/repository -Daxis2.xml=$ANTIFRAUD_HOME/hasbroResources/resources/axis2/conf/axis2.xml  -jar $ANTIFRAUD_HOME/lib/a-notification-0.0.1.jar &
Run Code Online (Sandbox Code Playgroud)

例外:

2019-01-31T08:09:04.603-0600 INFO Deploying module: metadataExchange-1.6.2 - file:/apps/Benefits/AntiFraud/r20/dev/hasbroResources/resources/axis2/repository/modules/mex-1.6.2.mar
2019-01-31T08:09:04.603-0600 INFO Deploying module: metadataExchange-1.6.2 - file:/apps/Benefits/AntiFraud/r20/dev/hasbroResources/resources/axis2/repository/modules/mex-1.6.2.mar
2019-01-31T08:09:04.610-0600 INFO Deploying module: mtompolicy-1.6.2 - file:/apps/Benefits/AntiFraud/r20/dev/hasbroResources/resources/axis2/repository/modules/mtompolicy-1.6.2.mar
2019-01-31T08:09:04.611-0600 INFO Deploying module: mtompolicy-1.6.2 - file:/apps/Benefits/AntiFraud/r20/dev/hasbroResources/resources/axis2/repository/modules/mtompolicy-1.6.2.mar
2019-01-31T08:09:04.642-0600 INFO Deploying module: ping-1.6.2 - file:/apps/Benefits/AntiFraud/r20/dev/hasbroResources/resources/axis2/repository/modules/ping-1.6.2.mar
2019-01-31T08:09:04.645-0600 INFO Deploying module: ping-1.6.2 - file:/apps/Benefits/AntiFraud/r20/dev/hasbroResources/resources/axis2/repository/modules/ping-1.6.2.mar
2019-01-31T08:09:04.663-0600 INFO Deploying module: script-1.6.2 - file:/apps/Benefits/AntiFraud/r20/dev/hasbroResources/resources/axis2/repository/modules/scripting-1.6.2.mar
2019-01-31T08:09:04.663-0600 INFO Deploying module: script-1.6.2 - file:/apps/Benefits/AntiFraud/r20/dev/hasbroResources/resources/axis2/repository/modules/scripting-1.6.2.mar
2019-01-31T08:09:04.674-0600 INFO Deploying module: soapmonitor-1.6.2 - …
Run Code Online (Sandbox Code Playgroud)

java spring axis axis2 spring-boot

5
推荐指数
0
解决办法
293
查看次数