使用maven 2在Weblogic 10.3上部署Web应用程序时出错:“找不到wsdl /wsdls/wsat.wsdl”

时间:2010-04-09 15:44:05

标签: maven-2 weblogic weblogic-10.x weblogic-maven-plugin

我正在使用maven远程部署Weblogic 10.3服务器中的Web应用程序。我根据上一个问题的指示创建了我的pom文件:

Using maven as build tool for Weblogic 10.3

我的pom.xml文件是:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.balfourbeatty.horizon.maven.test</groupId>
  <artifactId>maven-test-webapp</artifactId>
  <packaging>war</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>maven-test-webapp Maven Webapp</name>
  <url>http://maven.apache.org</url>

  <properties>
    <weblogic.version>10.3</weblogic.version>
  </properties>


  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.myfaces.trinidadbuild</groupId>
        <artifactId>maven-jdev-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>weblogic-maven-plugin</artifactId>
        <version>2.9.1</version>
        <configuration>
          <name>maven-test-webapp</name>
          <adminServerHostName>******************</adminServerHostName>
          <adminServerPort>****</adminServerPort>
          <adminServerProtocol>t3</adminServerProtocol>
          <userId>******</userId>
          <password>*****</password>
          <upload>true</upload>
          <remote>true</remote>
          <verbose>true</verbose>
          <debug>true</debug>
          <targetNames>WLS_Spaces</targetNames>
          <noExit>true</noExit>
          <projectPackaging>war</projectPackaging>
        </configuration>
        <dependencies>
          <dependency>
            <groupId>com.sun</groupId>
            <artifactId>tools</artifactId>
            <version>1.6</version>
            <scope>system</scope>
            <systemPath>${java.home}/../lib/tools.jar</systemPath>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>weblogic</artifactId>
            <version>${weblogic.version}</version>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>webservices</artifactId>
            <version>${weblogic.version}</version>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.utils.full</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.i18n</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.weblogic.rmi.client</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>javax.enterprise.deploy</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>webserviceclient</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.weblogic.security.wls</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.weblogic.security.identity</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.weblogic.security</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>wlclient</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.transaction</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.utils.classloaders</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>wljmsclient</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.management.core</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>wls-api</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.descriptor</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.logging</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.weblogic.socket.api</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.weblogic.security.digest</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.weblogic.workmanager</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.weblogic.lifecycle</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.utils.wrapper</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>wlsafclient</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.management.jmx</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
          <dependency>
            <groupId>weblogic</groupId>
            <artifactId>com.bea.core.descriptor.wl</artifactId>
            <version>${weblogic.version}</version>
            <scope>provided</scope>
          </dependency>
    <dependency>
      <groupId>weblogic</groupId>
      <artifactId>javax.mail</artifactId>
      <version>10.3</version>
    </dependency>
        </dependencies>
      </plugin>
    </plugins>
    <finalName>maven-test-webapp</finalName>
  </build>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>weblogic-maven-plugin</artifactId>
      <version>2.9.1</version>
    </dependency>
  </dependencies>


<distributionManagement>
  <!-- use the following if you're not using a snapshot version. -->
  <repository>
    <id>internal</id>
    <name>Archiva Managed Internal Repository</name>
    <url>http://localhost:8180/archiva/repository/internal</url>
  </repository>
  <!-- use the following if you ARE using a snapshot version. -->
  <snapshotRepository>
    <id>snapshots</id>
    <name>Archiva Managed Snapshot Repository</name>
    <url>http://localhost:8180/archiva/repository/snapshots</url>
  </snapshotRepository>
</distributionManagement>  

</project>

所有依赖项都已正确解析,因为它们位于本地archiva存储库中。

该应用程序不包含任何Web服务,只是一个“hello world”应用程序。执行tree后完成maven install

C:.
│   pom.xml
│
├───src
│   └───main
│       ├───resources
│       └───webapp
│           │   index.jsp
│           │
│           └───WEB-INF
│                   web.xml
│
└───target
    │   maven-test-webapp.war
    │
    ├───classes
    ├───maven-archiver
    │       pom.properties
    │
    ├───maven-test-webapp
    │   │   index.jsp
    │   │
    │   ├───META-INF
    │   └───WEB-INF
    │       │   web.xml
    │       │
    │       ├───classes
    │       └───lib
    │               ant-1.6.5.jar
    │               maven-artifact-2.0.jar
    │               maven-plugin-api-2.0.jar
    │               plexus-utils-1.0.4.jar
    │               weblogic-10.3.jar
    │               weblogic-maven-plugin-2.9.1.jar
    │               webservices-10.3.jar
    │
    └───war
        └───work
                webapp-cache.xml

我得到的错误是:

[BasicOperation.execute():423] : Initiating deploy operation for app, maven-test-webapp, on targets:
[BasicOperation.execute():425] :    WLS_Spaces
Task 14 initiated: [Deployer:149026]deploy application maven-test-webapp on WLS_Spaces.
dumping Exception stack
Task 14 failed: [Deployer:149026]deploy application maven-test-webapp on WLS_Spaces.
Target state: deploy failed on Server WLS_Spaces
weblogic.wsee.ws.WsException: When processing WebService module 'maven-test-webapp.war'.  Can't find wsdl /wsdls/wsat.wsdl
        at weblogic.wsee.deploy.WSEEWebModule.loadWsdlDefinitions(WSEEWebModule.java:159)
        at weblogic.wsee.deploy.WSEEModule.loadWsdl(WSEEModule.java:334)
        at weblogic.wsee.deploy.WSEEAnnotationProcessor.isWsdlHasPolicy(WSEEAnnotationProcessor.java:312)
        at weblogic.wsee.deploy.WSEEAnnotationProcessor.process(WSEEAnnotationProcessor.java:91)
        at weblogic.wsee.deploy.WSEEAnnotationProcessor.process(WSEEAnnotationProcessor.java:51)
        at weblogic.wsee.deploy.WSEEModule.prepare(WSEEModule.java:102)
        at weblogic.wsee.deploy.ServletDeployListener.contextPrepared(ServletDeployListener.java:26)
        at weblogic.servlet.internal.EventsManager$FireContextPreparedAction.run(EventsManager.java:503)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
        at weblogic.servlet.internal.EventsManager.notifyContextPreparedEvent(EventsManager.java:162)
        at weblogic.servlet.internal.WebAppServletContext.initContextListeners(WebAppServletContext.java:1782)
        at weblogic.servlet.internal.WebAppServletContext.prepare(WebAppServletContext.java:1136)
        at weblogic.servlet.internal.HttpServer.doPostContextInit(HttpServer.java:449)
        at weblogic.servlet.internal.HttpServer.loadWebApp(HttpServer.java:424)
        at weblogic.servlet.internal.WebAppModule.registerWebApp(WebAppModule.java:924)
        at weblogic.servlet.internal.WebAppModule.prepare(WebAppModule.java:356)
        at weblogic.application.internal.flow.ScopedModuleDriver.prepare(ScopedModuleDriver.java:176)
        at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:199)
        at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:391)
        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:83)
        at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:59)
        at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:43)
        at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:1221)
        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:83)
        at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:367)
        at weblogic.application.internal.SingleModuleDeployment.prepare(SingleModuleDeployment.java:39)
        at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:154)
        at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:60)
        at weblogic.deploy.internal.targetserver.operations.ActivateOperation.createAndPrepareContainer(ActivateOperation.java:207)
        at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doPrepare(ActivateOperation.java:98)
        at weblogic.deploy.internal.targetserver.operations.AbstractOperation.prepare(AbstractOperation.java:217)
        at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentPrepare(DeploymentManager.java:747)
        at weblogic.deploy.internal.targetserver.DeploymentManager.prepareDeploymentList(DeploymentManager.java:1216)
        at weblogic.deploy.internal.targetserver.DeploymentManager.handlePrepare(DeploymentManager.java:250)
        at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.prepare(DeploymentServiceDispatcher.java:159)
        at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doPrepareCallback(DeploymentReceiverCallbackDeliverer.java:157)
        at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$000(DeploymentReceiverCallbackDeliverer.java:12)
        at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$1.run(DeploymentReceiverCallbackDeliverer.java:45)
        at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:516)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

有没有人知道问题是什么?

非常感谢!

1 个答案:

答案 0 :(得分:3)

我很确定你不应该在“hello word”webapp中拥有以下依赖项:

ant-1.6.5.jar
maven-artifact-2.0.jar
maven-plugin-api-2.0.jar
plexus-utils-1.0.4.jar
weblogic-10.3.jar
weblogic-maven-plugin-2.9.1.jar
webservices-10.3.jar

我怀疑weblogic会检测其中一个jar(最新的?)并将您的应用程序视为WebService模块。我会做一些清理工作:

  • 我不确定您是否需要将weblogic-maven-plugin声明为依赖项(如果这样做,请使用provided范围,您不希望它及其依赖项位于webapp中。< / LI>
  • 您不应将weblogic JAR打包到网络应用中(将其标记为provided)。
  • 您不应将webservices JAR打包到网络应用中(将其标记为provided)

然后,再试一次。