2017-06-07 13 views
0

IBM MobileFirst 8.0でJavaアダプタを使用して外部ライブラリを使用する場合の制限事項はありますか?私はguava私のコードを追加外部ライブラリを持つIBM MobileFirstアダプタ

は(mfpdevアダプタが成功を構築する)エラーを持っていませんが、私のサーバーにデプロイするとき、それはエラーで応答します。

[ERROR] Failed to execute goal com.ibm.mfp:adapter-maven-plugin:8.0.2016082422:deploy (default-cli) on project X: The output of /mfpadmin/management-apis/2.0/runtimes/mfp/adapters is of type text/html, which is unsupported. Expected an output of type text/xml or application/xml or application/json. -> [Help 1] 

しかし、私はポンポンで(MVN依存関係を)グアバを削除するとIアダプタを展開できます。私が見ることができるような問題は、他の図書館にも起こります。このようなライブラリを使用するオプションはありますか?

mfpdevの-v:8.0.0-2017012016

EDIT:私は最終的にポンポンファイルにグアバのためのスコープを設定することで、問題を解決:

<scope>provided</scope> 
+0

どのようにpom.xmlに追加しましたか? –

+0

mvn依存関係によって。 '<! - https://mvnrepository.com/artifact/com.google.guava/guava - > com.google.guava グアバ 21.0 ' – 3squad

答えて

0

私は私のMFP 8.0環境でこれを試してみました問題はありません。

mfpdev -v 
8.0.0-2017012016 

0. Create a sample Java adapter "mfpdev adapter create" 
1. Added dependency with guava 21 in pom.xml 
<dependency> 
<groupId>com.google.guava</groupId> 
<artifactId>guava</artifactId> 
<version>21.0</version> 
</dependency> 

2. added a simple guava package and used it. 

import com.google.common.base.Optional; 

@GET 

     @Produces(MediaType.TEXT_PLAIN) 
     public String getResourceData() { 
       // log message to server log 
       logger.info("Logging info message..."); 
       Integer invalidInput = new Integer(20); 
     Optional<Integer> a = Optional.of(Input); 
     Optional<Integer> b = Optional.of(new Integer(10)); 
     logger.info("Logging my message with guava"); 
    ); 
     return "Hello from guava resource "+sum(a,b) ; 
     } 

4. build, deploy went successful 

5. Access above resource 

Request URL 

http://localhost:9080/mfp/api/adapters/testGuavaAdapter/resource 

Response Body 

Hello from guava resource 30 

Response Code 

200 

Response Headers 

{ 
    "x-powered-by": "Servlet/3.1", 
    "content-type": "text/plain", 
    "date": "Thu, 08 Jun 2017 11:48:32 GMT", 
    "content-length": "28" 
} 

この作業用のpomがご使用の環境であることを確認してください。

+0

私の問題私がJavaコードでそれを使用していない場合でも、私は依存関係にあるguavaを持っているときに常に発生します。私がguavaの依存関係をコメントアウトすると、問題なくアダプタをデプロイできますが、この依存関係を追加するとできません。 '' – 3squad

+0

上記のように、私は依存関係を追加して動作します。最新のMFP8 製品バージョン:8.0.0.00-20170412-235541です。使用しているMFPサーバのバージョンを確認できますか?pom.xmlにhvと同じ方法で依存関係を追加していますか? –

+0

私は確信しています。私は最終的にスコープを設定することによって問題を解決しました。 – 3squad

関連する問題