質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.50%

  • AWS(Amazon Web Services)

    2004questions

    Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

  • Spring Boot

    500questions

    Spring Bootは、Javaのフレームワークの一つ。Springプロジェクトが提供する様々なフレームワークを統合した、アプリケーションを高速で開発するために設計されたフレームワークです。

  • LINE Messaging API

    142questions

  • Let's Encrypt

    41questions

Let's Encryptで作成した証明書を使いhttps化したサイトがwebhookに反応しない

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 222

ttaguchi

score 4

 前提・実現したいこと

SpringBootを使いLINEBotのアプリを作り、aws上で動かそうとしてます。
ドメインをお名前.comで作成し、ネームサーバーをawsの方に変更しました。
ec2インスタンスにeipを設定し、rote53でドメインと結びつけました。
その後、以下の記事を参考にLet's Encryptで証明書を作成して配置しhttps(ポートは443)アクセスをできるようにしました。
Spring bootでSSL(HTTPS)を有効にする~Let's Encrypt編~

 発生している問題・エラーメッセージ

ドメイン/callbackをwebhookに指定したところ以下のエラーが起こりました。

エラー画面

ソースコード

@SpringBootApplication
@LineMessageHandler
public class LineEventApplication {

    public static void main(String[] args) {
        SpringApplication.run(LineEventApplication.class, args);
    }

    @EventMapping
    public TextMessage handleTextMessageEvent(MessageEvent<TextMessageContent> event) {
        System.out.println("event: " + event);
        System.out.println("LINEID: " + event.getSource().getUserId());
        System.out.println("text: " + event.getMessage().getText());
        return new TextMessage(event.getMessage().getText());
    }

     @EventMapping
        public void handleDefaultMessageEvent(Event event) {
            System.out.println("event: " + event);
        }
}


springboot

2018-06-27 04:40:03.457  INFO 3177 --- [           main] c.t.springboot.LineEventApplication      : Starting LineEventApplication v0.0.1-SNAPSHOT on ip-155-155-20-206 with PID 3177 (/home/ec2-user/botapp/MyBootApp-0.0.1-SNAPSHOT.jar started by root in /home/ec2-user/botapp)
2018-06-27 04:40:03.474  INFO 3177 --- [           main] c.t.springboot.LineEventApplication      : No active profile set, falling back to default profiles: default
2018-06-27 04:40:03.687  INFO 3177 --- [           main] ConfigServletWebServerApplicationContext : Refreshing org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@3c679bde: startup date [Wed Jun 27 04:40:03 UTC 2018]; root of context hierarchy
2018-06-27 04:40:06.933  INFO 3177 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 443 (https)
2018-06-27 04:40:07.000  INFO 3177 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2018-06-27 04:40:07.001  INFO 3177 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet Engine: Apache Tomcat/8.5.31
2018-06-27 04:40:07.028  INFO 3177 --- [ost-startStop-1] o.a.catalina.core.AprLifecycleListener   : The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib]
2018-06-27 04:40:07.184  INFO 3177 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2018-06-27 04:40:07.189  INFO 3177 --- [ost-startStop-1] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 3527 ms
2018-06-27 04:40:07.467  INFO 3177 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean  : Servlet dispatcherServlet mapped to [/]
2018-06-27 04:40:07.471  INFO 3177 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'characterEncodingFilter' to: [/*]
2018-06-27 04:40:07.475  INFO 3177 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2018-06-27 04:40:07.475  INFO 3177 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2018-06-27 04:40:07.475  INFO 3177 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'requestContextFilter' to: [/*]
2018-06-27 04:40:07.755  INFO 3177 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-06-27 04:40:08.843  INFO 3177 --- [           main] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@3c679bde: startup date [Wed Jun 27 04:40:03 UTC 2018]; root of context hierarchy
2018-06-27 04:40:08.988  INFO 3177 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/hello]}" onto public java.lang.String com.taguchi.springboot.RequestController.index()
2018-06-27 04:40:08.999  INFO 3177 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error],produces=[text/html]}" onto public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2018-06-27 04:40:09.007  INFO 3177 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error]}" onto public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String, java.lang.Object>> org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController.error(javax.servlet.http.HttpServletRequest)
2018-06-27 04:40:09.015  INFO 3177 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/callback],methods=[POST]}" onto public void com.linecorp.bot.spring.boot.support.LineMessageHandlerSupport.callback(java.util.List<com.linecorp.bot.model.event.Event>)
2018-06-27 04:40:09.073  INFO 3177 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-06-27 04:40:09.073  INFO 3177 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-06-27 04:40:10.124  INFO 3177 --- [           main] o.s.j.e.a.AnnotationMBeanExporter        : Registering beans for JMX exposure on startup
2018-06-27 04:40:10.168  INFO 3177 --- [           main] c.l.b.s.b.s.LineMessageHandlerSupport    : Registered LINE Messaging API event handler: count = 2
2018-06-27 04:40:10.175  INFO 3177 --- [           main] c.l.b.s.b.s.LineMessageHandlerSupport    : Mapped "[MessageEvent<TextMessageContent>]" onto public com.linecorp.bot.model.message.TextMessage com.taguchi.springboot.LineEventApplication.handleTextMessageEvent(com.linecorp.bot.model.event.MessageEvent<com.linecorp.bot.model.event.message.TextMessageContent>)
2018-06-27 04:40:10.175  INFO 3177 --- [           main] c.l.b.s.b.s.LineMessageHandlerSupport    : Mapped "[Event]" onto public void com.taguchi.springboot.LineEventApplication.handleDefaultMessageEvent(com.linecorp.bot.model.event.Event)
2018-06-27 04:40:10.991  INFO 3177 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 443 (https) with context path ''
2018-06-27 04:40:10.997  INFO 3177 --- [           main] c.t.springboot.LineEventApplication      : Started LineEventApplication in 8.608 seconds (JVM running for 9.585)


webhookの接続確認を押した後の/var/log/messages

Jun 27 04:26:09 ip-155-155-20-206 dhclient[2192]: XMT: Solicit on eth0, interval 113460ms.
Jun 27 04:28:03 ip-155-155-20-206 dhclient[2192]: XMT: Solicit on eth0, interval 131660ms.
Jun 27 04:30:15 ip-155-155-20-206 dhclient[2192]: XMT: Solicit on eth0, interval 129250ms.
Jun 27 04:32:24 ip-155-155-20-206 dhclient[2192]: XMT: Solicit on eth0, interval 108340ms.
Jun 27 04:34:12 ip-155-155-20-206 dhclient[2192]: XMT: Solicit on eth0, interval 116950ms.
Jun 27 04:36:10 ip-155-155-20-206 dhclient[2192]: XMT: Solicit on eth0, interval 119560ms.
Jun 27 04:38:09 ip-155-155-20-206 dhclient[2192]: XMT: Solicit on eth0, interval 109390ms.
Jun 27 04:39:59 ip-155-155-20-206 dhclient[2192]: XMT: Solicit on eth0, interval 108960ms.
Jun 27 04:41:48 ip-155-155-20-206 dhclient[2192]: XMT: Solicit on eth0, interval 126880ms.
Jun 27 04:42:00 ip-155-155-20-206 dhclient[2094]: DHCPREQUEST on eth0 to 155.155.20.1 port 67 (xid=0x4a73ab14)
Jun 27 04:42:00 ip-155-155-20-206 dhclient[2094]: DHCPACK from 155.155.20.1 (xid=0x4a73ab14)
Jun 27 04:42:00 ip-155-155-20-206 dhclient[2094]: bound to 155.155.20.206 -- renewal in 1565 seconds.
Jun 27 04:42:00 ip-155-155-20-206 ec2net: [get_meta] Trying to get http://169.254.169.254/latest/meta-data/network/interfaces/macs/06:0d:5a:1b:73:64/local-ipv4s
Jun 27 04:42:00 ip-155-155-20-206 ec2net: [rewrite_aliases] Rewriting aliases of eth0
Jun 27 04:43:55 ip-155-155-20-206 dhclient[2192]: XMT: Solicit on eth0, interval 109190ms.
Jun 27 04:45:44 ip-155-155-20-206 dhclient[2192]: XMT: Solicit on eth0, interval 123840ms.
Jun 27 04:47:48 ip-155-155-20-206 dhclient[2192]: XMT: Solicit on eth0, interval 120610ms.
Jun 27 04:49:48 ip-155-155-20-206 dhclient[2192]: XMT: Solicit on eth0, interval 126740ms.
Jun 27 04:51:55 ip-155-155-20-206 dhclient[2192]: XMT: Solicit on eth0, interval 122680ms.
Jun 27 04:53:58 ip-155-155-20-206 dhclient[2192]: XMT: Solicit on eth0, interval 128890ms.

 試したこと

アクセストークンの再発
url入力欄でのポートの指定

 補足情報(FW/ツールのバージョンなど)

javaのバージョンは8
ec2インスタンスはamazon linux
証明書情報
証明書

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • ttaguchi

    2018/06/27 15:04 編集

    すみません、一旦サーバーを止めていました。 今、起動させました。 お手数おかけしました。

    キャンセル

  • ttaguchi

    2018/06/27 15:11

    ありがとうございます。FWとGWの設定見直してみます。

    キャンセル

  • ttaguchi

    2018/06/27 16:02

    ec2のセキュリティグループでhttp(80)とhttps(443)はポートを開けています。

    キャンセル

回答 1

check解決した方法

+2

今回はec2を諦めてHerokuで実行すると正常に動作させることができました。
コメントしてくださった方ありがとうございました。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.50%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • AWS(Amazon Web Services)

    2004questions

    Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

  • Spring Boot

    500questions

    Spring Bootは、Javaのフレームワークの一つ。Springプロジェクトが提供する様々なフレームワークを統合した、アプリケーションを高速で開発するために設計されたフレームワークです。

  • LINE Messaging API

    142questions

  • Let's Encrypt

    41questions