2016-11-29 7 views
0

WSO2 API Manager 2.0.0 : white screens after installing https certificateに続いて、2.0.0のzipディストリビューションから新しいWSO2 APIマネージャ(シングルノード)をインストールしました。 MySQLデータベースは、H2データベースに関連する問題を回避しようとします。WSO2 API Manager 2.0.0:systemdサービスとして実行しているときに、アプリケーションビュー画面の白い画面

インストールが完了すると、警告は表示されず、エラーも表示されません(master-datasources.xmlですべての処理を正しく実行しようとすると、エラーは発生しません)。

パブリッシャーでは、管理者としてログインし、新しいAPIを作成し、swagger jsonコントラクトをインポートし、問題なくAPIを完成させることができます。

店舗では、管理者としてログインし、作成したAPIを表示し、右側のドロップダウンメニューから新しいアプリケーションを作成して登録することができます。

しかし、キーとトークンを生成するためにアプリケーションを開こうとすると、白い空の画面が表示されます。何もログに私を助けることはできません。

[29/Nov/2016:16:17:33 +0100] "GET /store/site/pages/application.jag?name=MyNewApp&tenant=carbon.super HTTP/1.1" 200 3 "https://10.22.106.101:9443/store/site/pages/applications.jag?tenant=carbon.super" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:50.0) Gecko/20100101 Firefox/50.0" 

EDIT: 数分、私はwso2carbon.logで繰り返しこの印刷を持つページがクラッシュ(多分関係ありませんが?)を取得した後:

WARN {sun.rmi.transport.tcp.TCPTransport$AcceptLoop} - RMI TCP Accept-11111: accept loop for ServerSocket[addr=0.0.0.0/0.0.0.0,localport=11111] throws {sun.rmi.transport.tcp.TCPTransport$AcceptLoop} 
java.lang.OutOfMemoryError: unable to create new native thread 

ここでも、これはカスタマイズ/設定なしでMySQLデータベースにプラグインされた基本インストール(解凍)です。

編集2:私は原因を見つけたが解決策は見つけられなかったと思う。私は、直接コマンドラインから起動すると、この問題は、私はsystemdにサービスを介して起動した場合にのみ、それが発生し、発生しません。

sudo sytemctl start wso2am.service 

/etc/systemd/system/wso2am.service:

[Unit] 
Description=WSO2 API Manager 

[Service] 
User=linc 

ExecStart=/bin/bash -c ". /etc/profile.d/setenv.sh; /home/linc/wso2am-2.0.0/bin/wso2server.sh start" 
Type=forking 

[Install] 
WantedBy=multi-user.target 

だからでありますWSO2はシステムの起動に対応していませんか?または私はいくつかのパラメータが不足していますか?

+0

何も助けないホープストップオプションを含める必要があり、

  • が動作していないnohupをし、しようとしますが?またはブラウザのコンソールで? – Bee

  • +0

    正確に。いくつかのログをどこかに表示させるにはどうすればよいですか?この "application.jag"は何を呼び出そうとしますか?それを別の方法で呼び出せますか? – Tristan

    +1

    デバッグするには、いくつかのログを 'repository/deployment/server/jaggeryapps/store/site/blocks/application/application-view/block.jag'に置き、失敗した箇所を確認することができます。 '新しいLog()。info("この行に達しました ");をいくつかの場所に置き、どこが壊れているかを確認します。 – Bee

    答えて

    1

    私はthis blog postに続いて、APIMをLinuxサービスとして実行しました。見てください。それは問題なく動作するはずです。 (myService.shの先頭に#!bin/shを必ず追加してください)

    +0

    に追加されました。ありがとうございます、うまく動作するようです。私は "Type = forking"を使用するのは、WSO2の仕組みやいくつかのサブプロセスがどこで殺されたかとは互換性がないと思います。 – Tristan

    +1

    各systemctlコマンドの前に "sudo"を使用し、.serviceファイルに変更を加えるたびに "sudo systemctl daemon-reload"を使用する必要があります – Tristan

    0

    最後に、私はWSD2.0 APIマネージャをSystemdサービスとして実行しています。

    これは


    [Unit] 
    Description=WSO2 API Manager 
    
    [Service] 
    Environment= JAVA_HOME=/usr/lib/jvm/java-8-oracle 
    WorkingDirectory=/opt/wso2/wso2am-2.0.0 
    User=wso2 
    ExecStart=/bin/bash /opt/wso2/wso2am-2.0.0/bin/wso2server.sh 
    ExecStop= /bin/bash -c '/opt/wso2/wso2am-2.0.0/bin/wso2server.sh stop' 
    ExecReload=/bin/bash -c '/opt/wso2/wso2am-2.0.0/bin/wso2server.sh restart' 
    
    [Install] 
    WantedBy=multi-user.target 
    

    私の 'wso2apim.service' ファイルであることは簡単だが、トリッキーな

    1. サービスタイプは、(どちらかフォークかない)単純です。 (デフォルト値)
    2. ExecStartには「開始」オプションは含まれていません。 開始オプションを指定すると、それは停止が

    はそれがwso2carbon.log上

    +0

    "RemainAfterExit = yes"は不要ですか? wso2serverがjavaサブプロセスを起動した直後にシェルが終了する必要があるため、サービスはsystemdによって終了されたものと見なされます。 – Tristan

    関連する問題