【问题标题】:What is the application root path of an axis2 .aar fileaxis2 .aar 文件的应用程序根路径是什么
【发布时间】:2013-02-04 01:14:32
【问题描述】:

我有一个轴 2 存档文件 (aar),我想将它部署到轴 2 网络应用程序。通常在.war 存档中,我们可以使用request.getServletContext().getRealPath("/") 访问应用程序根路径。我了解 Web 服务可以访问服务器中的文件。我尝试使用ConfigurationContext.getRealPath("/")。但这似乎不起作用。

【问题讨论】:

    标签: java web-services axis2


    【解决方案1】:

    你可以参考我的案例。

    https://community.jboss.org/thread/221937

    如果你使用 Windows 7,aar 似乎将用户帐户文件夹视为 root。

    【讨论】:

    • 好吧,我确实尝试过一次。就像说它指向用户帐户文件夹。但这是最好的做法吗?我认为您的所有 Web 应用程序相关文件(属性、外部文件等)都应该包含在您的应用程序路径中。
    • 哦,我这样做的原因是开源jar要求我将资源放在AAR的根路径下。在其他情况下,我通常将所需的资源(文本、图像等)放入 jar 中,并使用 getResourceStream 来使用它们。
    【解决方案2】:

    要让 Axis2 工作,您不需要 aar 文件。

    services.xml 文件可以位于以下任一位置以使 Axis2 工作。

    1. repository/services/SimpleService/meta-inf/services.xml
    2. WEB-INF/services/SimpleService/meta-inf/services.xml

    这将帮助我们避免生成 aar 文件的额外步骤。

    ServiceDeployer.java

     * <p>
     * Standard Axis2 service Deployer which use services.xml file to build
     * services. ServiceDeployer can be used with Axis2 archive (.aar) or exploded
     * directory structure. Some of the example formats given below.
     * </p>
     * <p>Examples : <p>
     *        <ul>
     *          <li>repository/services/SimpleService.aar/meta-inf/services.xml</li>
     *          <li>repository/services/SimpleService/meta-inf/services.xml</li>
     *          <li>WEB-INF/services/SimpleService.aar/meta-inf/services.xml</li>
     *          <li>WEB-INF/services/SimpleService/meta-inf/services.xml</li>
     *       </ul>
     
         InputStream servicexmlStream = serviceClassLoader
                .getResourceAsStream("META-INF/services.xml");
        if (servicexmlStream == null) {
            servicexmlStream = serviceClassLoader.getResourceAsStream("meta-inf/services.xml");
        } else {
            metainf = "META-INF";
        }
    

    https://axis.apache.org/axis2/java/core/apidocs/org/apache/axis2/deployment/ServiceDeployer.html

    【讨论】:

      猜你喜欢
      • 2018-04-28
      • 2013-05-20
      • 1970-01-01
      • 2020-12-12
      • 1970-01-01
      • 2011-03-27
      • 2010-09-24
      • 2011-01-08
      相关资源
      最近更新 更多