오래만에 자바프록시 수정하면서 실수 했던 부분이나 에러에 대해 정리를 했으며 수정 하기 전 이전소스 백업,에러 발생 시 이전 소스와 비교,EJB프로젝트에서 발생되는 오류제거 등을 한다면 소스수정이나 디폴로이 하는부분에 대해 실수를 줄일수 있지 않을까 생각이 듭니다.
자바프록시 호출 시 에러 발생
Reason: com.sap.aii.proxy.xiruntime.core.ESPXISystemFaultException: Error encountered during processing of XI request message in inbound ESP;Hint: com.sapengine.interfaces.webserices.runtime.RuntimeProcessException: Unexpected uriID '' Found: BindingData 'null', interfaceMapping 'null' interfaceDefinition 'null'
예전에 동일한 에러가 발생되서 해결했던적 있었는데 그때는 @XIEnabled, @TransportBindingRT 어노테이션을 추가해서 해결이 되었었고
이번에는 NWDS > ESB(Enterprise Service Browser)에서 인바운드 서비스인터페이스를 'Generate JavaBean Skeleton'를 실행하면서 기존 소스의 어노테이션을 자동으로 주석처리를 했었고 주석을 제거하면 다시 정상호출이 되었습니다.
@XIEnabled은 XI 3.0의 웹서비스에서 자동으로 XI애플리케이션으로 지정되지 않아 수동으로 해당 어노테이션을 넣어 명시적으로 수행이 필요한걸로 보입니다.
1342768 - Java WS provisioning for XI 3.0 WSDLs changed: no @XIEnabled
이전에 아래 노츠의 프로퍼티 isUpgradeScenario를
NWA > Configuration > Infrastructure > Java System Properties > Services > XPI Service: Java Proxy에 추가를 했지만 해결은 안되었습니다.
2029903 - Unexpected uriID - RuntimeProcessException @ com.sap.engine.interfaces.webservices.runtime
버젼관리 툴(DTR)이 제대로 동작한다면 문제는 없지만 혹시 모르니 이전 소스를 미리 백업해두는게 좋은것 같습니다(수정된 소스와 비교시 필요)
.EAR파일 디폴로이 할때 경고 발생
디폴로이 할때 경고가 발생된 적은 있지만 Deploy status:Warning 결과 후 상세 로그를 보면 'Class not found' 란 에러원인을 알수 있었고 EJB프로젝트에 외브 라이브러리 경로가 달라져서 클래스를 못찾아 발생되는 에러였던것 같습니다.
일부 .jar파일을 새로 다운로드 받아 클래스패스에 추가를 해주고 프로젝트에서 발생되는 이클립스에서 보이는 아래 에러들을 제거를 했습니다.
The project was not built due to 'Could not delete...' Fix the problem, then try refreshing this project and building it since it may be inconsistent
해당 경로의 폴더와 파일을 삭제 후 이클립스 재시작 후 에러가 사라졌습니다.
서비스 인터페이스 Generate JavaBean Skeleton할때 주의
IWAB0014E Unexpected exception occurred에 대한 에러가 발생된적 있었고 원인은 아래와 같습니다.
처음 Configurations 화면에서
Server runtime: SAP ServerWeb service runtime: SAP ServerService project, Service EAR project: EJB, EAR프로젝트 생성위치가 다른경우
그외 Server,Web service 선택 시 PO운영서버를 선택하게되면 기존 운영에서 서비스중인 자바프록시가 사라질수 있어서 주의가 필요합니다.
이전에 작성한 자바프록시 관련글입니다.
댓글 없음:
댓글 쓰기