خطأ في نشر تطبيق الويب على WebLogic 10.3 باستخدام Maven 2: "لا يمكن العثور على WSDL /WSDLS/WSAT.WSDL"

StackOverflow https://stackoverflow.com/questions/2608801

سؤال

أنا أستخدم Maven لنشر تطبيق الويب في خادم WebLogic 10.3 عن بُعد. لقد قمت بإنشاء ملف POM الخاص بي بناءً على المؤشر على هذا السؤال السابق:

باستخدام Maven كأداة بناء لـ 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>

يتم بالفعل حل جميع التبعيات بشكل صحيح ، لأنها في مستودع الأرشيفا المحلي.

لا يحتوي التطبيق على أي خدمة ويب ، كونه مجرد تطبيق "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)

هل لدى أي شخص أي فكرة عن ما يمكن أن تكون المشكلة؟

شكرا جزيلا!

هل كانت مفيدة؟

المحلول

أنا متأكد من أنه ليس من المفترض أن يكون لديك التبعيات التالية في WebApp "Hello Word":

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 للكشف عن أحد هذه الجرة (الأحدث؟) ومعالجة التطبيق الخاص بك كوحدة خدمة ويب. وهكذا سأفعل بعض التنظيف:

  • لست متأكدًا من أنك بحاجة إلى إعلان weblogic-maven-plugin كاعتماد (إذا قمت بذلك ، استخدم أ provided النطاق ، أنت لا تريدها وتبعياتها في WebApp).
  • يجب ألا تقوم بتعبئة ملف weblogic جرة في webapp (ضع علامة عليها على أنها provided).
  • يجب ألا تقوم بتعبئة ملف webservices جرة في webapp (ضع علامة عليها على أنها provided).

ثم أعد المحاولة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top