2017-01-10 17 views
3

Вот мой код, чтобы подписаться частные каналы, и когда я пытаюсь создать частную подписку, то я получил сообщение об ошибкеТолкатель Ошибка: Не удалось получить информацию аутентификации от вашего веб-приложение: 500 (фокус на 500 ошибки)

Pusher Сообщение об ошибке: Couldn't get auth info from your webapp : 500

Сценарий:

подписка находится в JavaScript в HTML Файл:

<!DOCTYPE html> 
<head> 
    <title>Pusher Test</title> 
    <script src="https://js.pusher.com/3.2/pusher.min.js"></script> 
    <script> 

    // Enable pusher logging - don't include this in production 
    Pusher.logToConsole = true; 
    var pusher = new Pusher('9272f25541ab7b04fc60', { 
     authEndpoint: 'http://localhost:8080/medecube/rest/initial/pusher/auth', 
     auth: { 
      headers: { 
       'X-CSRF-Token': "12345" 
      } 
      } 

     }); 

    var channel = pusher.subscribe('private-channel'); 
    channel.bind('pusher:subscription_succeeded', function() { 
      var triggered = channel.trigger('client-myEvent', { "message": "i am pusher client" }); 
     }); 

    </script> 
</head> 

Мой веб-сервис JAX-RS в Java

@POST 
    @Consumes(MediaType.APPLICATION_FORM_URLENCODED) 
    @Produces(MediaType.APPLICATION_JSON) 
    @Path("/pusher/auth") 
    public String processMessagesAndAuthentication(MultivaluedMap<String, String> input){ 
     Pusher pusher = new Pusher("269783", "Pusher-key", "5bbebf61fb77dbef45bc"); 
     String socket_id = input.getFirst("socket_id"); 
     String channel_name = input.getFirst("channel_name"); 
     String auth = pusher.authenticate(socket_id, channel_name); 
     return auth; 
    } 

Ошибка

POST http://localhost:8080/medecube/rest/initial/pusher/auth 500 (Internal Server Error)

pusher.min.js:8 Pusher : Couldn't get auth info from your webapp : 500 

Также на моем затмение консоли он показывает другой тип ошибки:

Caused by: java.lang.NoClassDefFoundError: org/apache/http/conn/HttpClientConnectionManager 

java.lang.ClassNotFoundException: org.apache.http.conn.HttpClientConnectionManager from [Module "deployment.medecube.war:main" from Service Module Loader] 

ответ

2

Я нашел решение для моего вопроса. На самом деле я забыл добавить зависимость HttpClient maven для pusher в моем файле pom.xml.Таким образом, толкателю не удалось загрузить ресурс. Добавляя зависимость maven, я получил свой ответ.

  <dependency> 
       <groupId>org.apache.httpcomponents</groupId> 
       <artifactId>httpclient</artifactId> 
       <version>4.3.5</version> 
      </dependency>