【问题标题】:Could not find wsdlLocation in additional metadatafiles在其他元数据文件中找不到 wsdlLocation
【发布时间】:2012-08-20 10:43:23
【问题描述】:

我配置了带有注释的 jax-ws Web 服务(jboss 实现)。

@WebService([...], wsdlLocation = "/WEB-INF/wsdl/service.wsdl")

wsld 文件包含在war 文件中。 war文件包含在ear文件中,部署在JBoss(版本:5.0.1.GA)上。

在部署期间,我收到如下错误消息: “在附加元数据文件中找不到 /WEB-INF/wsdl/service.wsdl!”

我尝试将文件放在很多地方: - 战争文件的 META-INF 文件夹, -EAR文件的META-INF文件夹, - 战争文件的类路径,

但我没有帮助。

有人知道我应该如何配置它吗?

【问题讨论】:

    标签: jboss wsdl jax-ws


    【解决方案1】:

    我遇到了同样的问题,我是这样解决的:

    @WebService(targetNamespace="http://my.app.it/", wsdlLocation = "WEB-INF/wsdl/additional.wsdl")

    (WEB-INF 不以斜线开头)

    【讨论】:

      【解决方案2】:

      为了解决这个问题,我将 WSDL 放入了我从生成的存根创建的 jar 文件中。然后设置wsdllocation,一切都很好。

      我的蚂蚁目标示例:

      <target name="genclients" depends="clean, -createdirs">
          <wsimport
              fork="true"
              xnocompile="true"
              wsdl="${src.resource.dir}\${wsdl.name}"
              wsdllocation="/resources/${wsdl.name}"
              sourcedestdir="${src.generated.dir}"
              verbose="true"
              destdir="${target.classes.dir}"
              keep="true"
              extension="true"
              debug="true"
              package="com.fedex.ship.stub"
              xadditionalHeaders="true"
              binding="${basedir}/binding.xml"
              >
              <arg line="-mark-generated"/>
          </wsimport>
      
          <javac srcdir="${src.generated.dir}" destdir="${target.classes.dir}" includeantruntime="false" source="1.6" target="1.6" debug="true" deprecation="false" optimize="false" failonerror="true">
              <include name="**/*.java"/>
          </javac>
      
          <copy todir="${target.classes.dir}" preservelastmodified="true" overwrite="true">
            <fileset dir="${src.dir}" >
              <include name="**/*.wsdl"/>
              <include name="**/*.xsd"/>
            </fileset>
          </copy>
      
          <pathconvert property="manifest.classpath" pathsep=" ">
              <mapper>
                  <chainedmapper>
                      <flattenmapper />
                  </chainedmapper>
              </mapper>
              <path>
              </path>
          </pathconvert>
      
          <mkdir dir="${target.classes.dir}/META-INF"/>
          <manifest file="${target.classes.dir}/META-INF/manifest.mf">
              <attribute name="Built-By" value="${user.name}"/>
              <attribute name="Class-Path" value="${manifest.classpath}"/>
          </manifest>
      
          <jar jarfile="${target.jar.dir}/${jar.name}" basedir="${target.classes.dir}" manifest="${target.classes.dir}/META-INF/manifest.mf" excludes=".settings,**/.svn"/>
      
          <!--
          <delete failonerror="false" includeEmptyDirs="true">
              <fileset dir="${target.classes.dir}"/>
          </delete>
          -->
      
      </target>
      

      【讨论】:

        猜你喜欢
        • 2014-07-01
        • 1970-01-01
        • 2022-10-20
        • 2015-01-11
        • 1970-01-01
        • 2020-06-01
        • 2010-11-28
        • 2015-05-13
        相关资源
        最近更新 更多