2016-07-01 9 views
1
이벤트가 오리온

오리온/양성자 가입 : java.lang.NullPointerException이 오리온에서 이벤트를 구문 분석

이이 양자 로그 인에 의해 전송 될 때마다

내 양성자 인스턴스가 java.lang.NullPointerException이 실패합니다

proton_1 | 01-Jul-2016 09:46:03.117 INFO [http-nio-8080-exec-1] com.ibm.hrl.proton.webapp.providers.EventXmlNgsiMessageReader.readFrom started event message body reader 
proton_1 | 01-Jul-2016 09:46:03.125 INFO [http-nio-8080-exec-1] com.ibm.hrl.proton.webapp.providers.EventXmlNgsiMessageReader.readFrom Event: ApeContextUpdate 
proton_1 | 01-Jul-2016 09:46:03.126 SEVERE [http-nio-8080-exec-1] com.ibm.hrl.proton.webapp.providers.EventXmlNgsiMessageReader.readFrom Could not parse XML NGSI event java.lang.NullPointerException, reason: null 
proton_1 | last attribute name: null last value: null 
proton_1 | 01-Jul-2016 09:46:03.130 INFO [http-nio-8080-exec-1] com.ibm.hrl.proton.webapp.providers.EventXmlNgsiMessageReader.readFrom finished event message body reader 
proton_1 | 01-Jul-2016 09:46:03.131 INFO [http-nio-8080-exec-1] com.ibm.hrl.proton.webapp.resources.EventResource.submitNewEvent starting submitNewEvent 
proton_1 | 01-Jul-2016 09:46:03.132 SEVERE [http-nio-8080-exec-1] com.ibm.hrl.proton.webapp.resources.EventResource.submitNewEvent Could not send event, reason: java.lang.NullPointerException, message: null 

사용자 안내서의 부록을 읽고 이벤트 이름과 속성 목록을 두 번 확인했습니다.

은 오리온에 의해 전송 된 XML입니다 : 이것은 양자 프로젝트의 정의는

POST /ProtonOnWebServer/rest/events HTTP/1.1 
User-Agent: orion/0.28.0 libcurl/7.19.7 
Host: localhost:8080 
Accept: application/xml, application/json 
Content-length: 772 
Content-type: application/xml 

<notifyContextRequest> 
<subscriptionId>57762eb9982959644644f9ee</subscriptionId> 
<originator>localhost</originator> 
<contextResponseList> 
    <contextElementResponse> 
    <contextElement> 
     <entityId type="Ape" isPattern="false"> 
     <id>u1</id> 
     </entityId> 
     <contextAttributeList> 
     <contextAttribute> 
      <name>carsharing</name> 
      <type>urn:x-ogc:def:trs:IDAS:1.0:ISO8601</type> 
      <contextValue>2016-07-01T11:01:06</contextValue> 
     </contextAttribute> 
     </contextAttributeList> 
    </contextElement> 
    <statusCode> 
     <code>200</code> 
     <reasonPhrase>OK</reasonPhrase> 
    </statusCode> 
    </contextElementResponse> 
</contextResponseList> 
</notifyContextRequest> 

(또한 나머지 API는 NullPointerException이 실패 때문에 BTW이 서버 파일 시스템 에서 복사 한 프로젝트입니다)

{ 
"epn": { 
    "events": [ 
    { 
     "name": "ApeContextUpdate", 
     "createdDate": "Fri Jul 01 2016", 
     "attributes": [ 
     { 
      "name": "entityId", 
      "type": "String", 
      "dimension": "0" 
     }, 
     { 
      "name": "entityType", 
      "type": "String", 
      "dimension": "0" 
     }, 
     { 
      "name": "carsharing", 
      "type": "Date", 
      "dimension": "0" 
     } 
     ] 
    } 
    ], 
    "epas": [], 
    "contexts": { 
    "temporal": [], 
    "segmentation": [], 
    "composite": [] 
    }, 
    "consumers": [], 
    "producers": [], 
    "name": "t0" 
} 
} 

이 내 고정 표시기-작성 파일입니다

mongo: 
    image: mongo:2.6 
    command: --smallfiles --quiet 

proton: 
    image: fiware/proactivetechnologyonline 
    ports: 
     - "8080:8080" 

orion: 
    image: fiware/orion:0.28 
    links: 
    - mongo 
    - proton 
    command: -dbhost mongo --silent 
    ports: 
     - "1026:1026" 
,536,913 63,210

내가 오리온 0.28 (XML 알림을 지원하는 마지막) 1 최신 양성자

UPDATE 사용하고 있습니다 - catalina.log

07-Jul-2016 07:52:39.914 INFO [http-nio-8080-exec-1] com.ibm.hrl.proton.webapp.providers.EventXmlNgsiMessageReader.readFrom started event message body reader 
07-Jul-2016 07:52:39.924 INFO [http-nio-8080-exec-1] com.ibm.hrl.proton.webapp.providers.EventXmlNgsiMessageReader.readFrom Event: ApeContextUpdate 
07-Jul-2016 07:52:39.924 SEVERE [http-nio-8080-exec-1] com.ibm.hrl.proton.webapp.providers.EventXmlNgsiMessageReader.readFrom Could not parse XML NGSI event java.lang.NullPointerException, reason: null 
last attribute name: null last value: null 
07-Jul-2016 07:52:39.928 INFO [http-nio-8080-exec-1] com.ibm.hrl.proton.webapp.providers.EventXmlNgsiMessageReader.readFrom finished event message body reader 
07-Jul-2016 07:52:39.929 INFO [http-nio-8080-exec-1] com.ibm.hrl.proton.webapp.resources.EventResource.submitNewEvent starting submitNewEvent 
07-Jul-2016 07:52:39.929 SEVERE [http-nio-8080-exec-1] com.ibm.hrl.proton.webapp.resources.EventResource.submitNewEvent Could not send event, reason: java.lang.NullPointerException, message: null 
+0

, 오리온에 의해 전송이 잘 형성되는 것이하지 않는 것, 그래서 : 여기에 설명 된대로

당신이 편안하고 인터페이스를 사용하여 정의를 업데이트 할 수 있습니다 오리온에서 문제가 될 수 있습니다. – fgalan

+0

OK, 아직 PROTON에서 지원하지 않는 최신 ORION 릴리스에서 JSON 메시지의 비 호환성을 알고 있습니다. 자세한 내용 주셔서 감사합니다. 문제를 조사. – urishani

답변

1

문제가 될 것으로 보인다을 당신의 양성자 인스턴스 실제로 프로젝트의 JSON 정의 파일로 구성되지 않으므로 모든 유형의 POST를 전송할 때 Proton의 메타 데이터에서 해당 이벤트를 찾을 수 없으므로 항상 NullPointerException이 발생합니다. http://proactive-technology-online.readthedocs.io/en/latest/Proton-InstallationAndAdminGuide/index.html (관리 부분에 대한 설정 아파치 톰캣)

을 그리고 다음 쿼리 실행 :

여기에 설명 된대로 인스턴스의 관리 인터페이스를 구성하여보십시오 GET //<ip of the machine running Proton>:8080/ProtonOnWebServerAdmin/resources/definitions을. 실행하여 특정 프로젝트의 정의를 이 ... 를이 인스턴스가 가지고있는 모든 프로젝트 정의를 반환해야합니다 그리고 당신은 목록이 표시되면 다음, 당신은 검색 할 수 있습니다 GET /<ip of the machine running Proton>:8080/resources/definitions/{definition_name}합니다. 이것이 아무것도 반환하지 않거나 비어있을 것이라고 생각합니다. (전무 정의 저장소 부분에서) http://forge.fiware.org/plugins/mediawiki/wiki/fiware/index.php/Complex_Event_Processing_Open_RESTful_API_Specification 내가 체크 한 FAS로

+0

불행히도 API'/ ProtonOnWebServerAdmin/resources/definitions'는 작동하지 않습니다. 또한 java.lang.NullPointerException으로 실패합니다. 난 당신이 설명하는 현상에 따라, 나는 확실하지 않다 ... 원래의 질문에이 문제에 대해 쓴 그러나 아마 그것은 내가 톰캣 서버의 catalina.log을보고 싶다 붙여 넣은 조각 – dvd

+0

에 의해 압도되었다 응용 프로그램이 올바르게 설치되었습니다. – inna

+0

catalina.log에서 관련 행을 추가했지만, 설치 문제라면 docker 이미지가 손상되었다는 의미입니까? – dvd