1

HermesJMSとMaven2を使用するSoapUIプロジェクトを自動化する必要があります。私が得る問題は、SoapUIがHermesJMSをそのクラスパスに統合できないことです。

2012-09-20 15:48:21,340 ERROR [SoapUI] An error occured [java.lang.NullPointerException], see error log for details
2012-09-20 15:48:21,465 ERROR [errorlog] java.lang.NullPointerException
java.lang.NullPointerException
at com.eviware.soapui.impl.wsdl.submit.transports.jms.util.HermesUtils.addHermesJarsToClasspath(HermesUtils.java:120)
at com.eviware.soapui.impl.wsdl.submit.transports.jms.util.HermesUtils.getHermes(HermesUtils.java:74)
at com.eviware.soapui.impl.wsdl.submit.transports.jms.util.HermesUtils.hermesContext(HermesUtils.java:55)
at com.eviware.soapui.impl.wsdl.submit.transports.jms.util.HermesUtils.getHermes(HermesUtils.java:200)
at com.eviware.soapui.impl.wsdl.submit.transports.jms.HermesJmsRequestTransport.getHermes(HermesJmsRequestTransport.java:211)
at com.eviware.soapui.impl.wsdl.submit.transports.jms.HermesJmsRequestTransport.init(HermesJmsRequestTransport.java:102)

統合は思ったほどスムーズではないようです。

ここにプラグイン構成があります:

<plugin>
        <groupId>eviware</groupId>
        <artifactId>maven-soapui-plugin</artifactId>
        <version>4.5.1</version>
        <dependencies>
                <!-- Start IBM DB2 Support -->
                <dependency>
                        <groupId>com.ibm.db2</groupId>
                        <artifactId>db2jcc</artifactId>
                        <version>3.1.57</version>
                </dependency>
                <dependency>
                        <groupId>com.ibm.db2</groupId>
                        <artifactId>db2jcc_license_cu</artifactId>
                        <version>3.1.57</version>
                </dependency>
                <dependency>
                        <groupId>com.ibm.db2</groupId>
                        <artifactId>db2jcc_license_cisuz</artifactId>
                        <version>3.1.57</version>
                </dependency>
                <!-- End IBM DB2 Support -->
                <dependency>
                        <groupId>hermesjms</groupId>
                        <artifactId>hermes</artifactId>
                        <version>1.14</version>
                </dependency>
        </dependencies>
        <configuration>
                <projectFile>src/test/resources/config/BATS-soapui.xml</projectFile>
                <testSuite>BATS</testSuite>
                <outputFolder>${basedir}/target/soapui</outputFolder>
                <projectProperties>
                        <value>outputFileLocation=${outputFileLocation}</value>
                        <value>malpakke=${malpakke}</value>
                        <value>fagomrade=${fagomrade}</value>
                        <value>useDatabase=${useDatabase}</value>
                </projectProperties>
        </configuration>
        <executions>
                <execution>
                        <phase>integration-test</phase>
                        <goals>
                                <goal>test</goal>
                        </goals>
                </execution>
        </executions>
</plugin>

SoapUIはHermesを正しく検出しないと思いますが、どうすれば修正できますか?

4

3 に答える 3

1

私はこれを次の手順で稼働させています。

  • pom.xmlにhermes-1.14の依存関係を追加します
  • hermesJMSインストールをビルドサーバーのファイルシステムにコピーします
  • プロジェクトにhermes-config.xmlを追加しますが、ビルドする前にファイルシステムにコピーします
  • プロジェクトにsoapui-settings.xmlを追加し、soapui-maven-pluginの-tagとともに使用します。
  • hermesJMSインストールのパスでsoapui-settings.xmlを更新します
  • Hermes-config.xmlの場所のパスでSoapUIプロジェクトファイルを更新します

(構成ファイル内のパスの場所は、OSに依存しないようにするのが最善であることに注意してください)。

于 2013-10-23T09:30:35.503 に答える
0

私はついにこの問題を解決しました。結局のところ、pom.xmlのhermesの依存関係は、hermesをsoapUiで利用できるようにしません。最終的に/src/ test / resourcesフォルダー内にhermesフォルダーを含め、プロジェクトXML内のこのフォルダーを指定しました。

于 2012-09-24T10:02:34.923 に答える
0

私はそれが遅いことを知っていますが、とにかくそれは他の人にとって役立つでしょう。

構成要素の下のpomxml内でSOAPUI設定XMLの場所を指定することにより、HermesをMavenと連携させました。

<settingsFile>C:/softwares/soapui/soapui-settings.xml</settingsFile>

このように、hermesフォルダをコピーする必要はありません。

于 2013-06-05T22:56:44.710 に答える