2017-10-29 12 views
1

私はアプリケーションを正常に起動するためにAPIを使用していますが、何らかの理由で中空のuberjarを使用して別のWARからアプリケーションを起動する必要があります。中空のjarを持つカスタムメインメソッドの使い方についての参考文献を見つけることができず、2017.10.1のmainメソッドに関するdeprecation notesのために、私はYAML設定を使用することに決めました。私は変換を行ったが、少なくともメッセージングの割合がconfigsをピックアップしていないことを示す別のエラーが発生しています。参照を掘ることは助けにもならなかった。ここでAPI呼び出しに相当するYAML設定

が動作する方法であって、

 swarm 
      // Setup data sources 
      .fraction(new DatasourcesFraction() 
        // SWARM BUG: at least one DS without JNDI binding shall be provided ~> https://issues.jboss.org/browse/SWARM-1447 
        .dataSource("def-ds", ds -> { 
         ds.driverName("postgresql"); 
         ds.connectionUrl(jdbcUrl); 
         ds.userName("commons_user"); 
         ds.password("commonsTestDb"); 
         ds.jta(true); 
        }) 
        .dataSource("common-ds", ds -> { 
         ds.driverName("postgresql"); 
         ds.connectionUrl(jdbcUrl); 
         ds.userName("commons_user"); 
         ds.password("commonsTestDb"); 
         ds.jndiName("java:/jdbc/dbpool"); 
         ds.jta(true); 
        })) 

      // Setup JMS 
      .outboundSocketBinding("standard-sockets", 
        new OutboundSocketBinding("remote-activemq") 
          .remoteHost("artemis") 
          .remotePort("61616")) 


      .fraction(new MessagingFraction() 
        .defaultServer(server -> { 

         server.remoteConnector("remote-activemq", connector -> { 
          connector.socketBinding("remote-activemq"); 
         }); 

         server.pooledConnectionFactory("remote-activemq", factory -> { 
          factory.connectors("remote-activemq"); 
          factory.entries("java:/jms/remote-mq"); 
          factory.user("artemis_user"); 
          factory.password("artemis_password"); 
         }); 

         server.jmsTopic("domain-events", topic -> { 
          topic.entries("java:/jms/topic/domain-events"); 
         }); 

        })) 

      .start(); 

    // deploy JAX-RS resources 
    swarm.deploy(
      ShrinkWrap 
        .create(JAXRSArchive.class) 
        .addAllDependencies()); 

、ここでは動作していないYAMLの設定です:

swarm: 

    datasources: 

    data-sources: 
     # SWARM BUG: at least one DS without JNDI binding shall be provided ~> https://issues.jboss.org/browse/SWARM-1447 
     CommonDSDef: 
     driver-name: postgresql 
     connection-url: "jdbc:postgresql://postgres:5432/commons" 
     user-name: commons_user 
     password: commonsTestDb 
     jta: true 

     CommonDS: 
     driver-name: postgresql 
     connection-url: "jdbc:postgresql://postgres:5432/commons" 
     user-name: commons_user 
     password: commonsTestDb 
     jndi-name: java:/jdbc/dbpool 
     jta: true 

    network: 
    socket-binding-groups: 
     standard-sockets: 
     outbound-socket-bindings: 
       remote-activemq: 
       remote-host: artemis 
       remote-port: 61616 

    messaging: 
    servers: 
     default: 
     remote-connectors: 
      remote-activemq: 
       socket-binding: remote-activemq 

     pooled-connection-factories: 
      remote-activemq: 
       connectors: remote-activemq 
       entries: java:/jms/remote-mq 
       user: artemis_user 
       password: artemis_password 

     jms-topics: 
      domain-events: 
       entries: java:/jms/topic/domain-events 


    deployment: 
    dummy-app: 
     jaxrs: 
     application-path:/

設定を使用しようとしている間、私はログにエラーを以下の取得:

2017-10-28 19:36:31,219 ERROR [org.jboss.as.controller.management-operation] (main) WFLYCTL0013: Operation ("add") failed - address: (("deployment" => "commons-mocks-2.0.0-SNAPSHOT.war")) - failure description: { 
    "WFLYCTL0412: Required services that are not installed:" => ["jboss.ra.remote-activemq"], 
    "WFLYCTL0180: Services with missing/unavailable dependencies" => ["jboss.deployment.unit.\"commons-mocks-2.0.0-SNAPSHOT.war\".component.DummyDomainEventListener.CREATE is missing [jboss.ra.remote-activemq]"] 
} 
    2017-10-28 19:36:31,221 ERROR [org.jboss.as.server] (main) WFLYSRV0021: Deploy of deployment "commons-mocks-2.0.0-SNAPSHOT.war" was rolled back with the following failure message: 
{ 
    "WFLYCTL0412: Required services that are not installed:" => ["jboss.ra.remote-activemq"], 
    "WFLYCTL0180: Services with missing/unavailable dependencies" => ["jboss.deployment.unit.\"commons-mocks-2.0.0-SNAPSHOT.war\".component.DummyDomainEventListener.CREATE is missing [jboss.ra.remote-activemq]"] 
} 

その後、他の関連するエラーが発生し、最終的にサーバーが停止します。

答えて

1

データソースに関する問題は、https://issues.jboss.org/browse/SWARM-1486の下に提出されており、そこに説明を追加しました。

messagingの問題はドキュメントの問題です。正しい名前はmessaging-activemqです。これはドキュメンテーションのリファクタリングで既に修正されています。http://docs.wildfly-swarm.io/2017.11.0-SNAPSHOT/#_messaging

+0

それは唯一の問題ではないようですが、少なくともそれは主要なものの1つでした。 JMS接続ファクトリ、コネクタはすべて同じ方法で同じ名前を使用していて、これは何とか野生のものを混乱させていました。返信ありがとう! – mohamnag

関連する問題