2020년 7월 25일 토요일

sap pi/xi The cause of the error occurred

sap pi/xi The cause of the error occurred


오래전에 정리했었던  SAP XI/PI에서 발생되었던 에러내용 및 기타내용 정리한 글입니다. 버젼이 업그레이드 되서 PO 7.5에서 개발을 하고 있지만 에러내용은 동일하네요.

에러내용정리


현상: 

#15 15:58:02 [AWT-EventQueue-0] ERROR com.sap.aii.utilxi.swing.toolkit.ExceptionDialog: Throwable

Thrown:

MESSAGE ID: com.sap.aii.ib.server.oa.rb_all.CHECK_EXCEPTION

com.sap.aii.ib.core.clmgmt.ChangeListMgmtException: Internal error while checking object

 

원인: 

1) Map all the fields in the Target Structure .
2) test the mapping - are you getting any error , also check the display queue
3) Create another dummy mapping and try to activate that. If you get same error, then there may some java files problems i.e J2EE engine files .
4) Is there old version of this mapping exist ?


현상: 

Exception in thread "main" AxisFault
 faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server
 faultSubcode:
 faultString: Server Error
 faultActor:
 faultNode:
 faultDetail:
    {http://sap.com/xi/WebService/xi2.0}SystemError:
          <context>XIAdapter</context>
          <code>ADAPTER.JAVA_EXCEPTION</code>
          <text><![CDATA[
com.sap.aii.af.ra.ms.api.DeliveryException: XIAdapterFramework:GENERAL:com.sap.aii.af.ra.ms.api.DeliveryException: error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: could not convert request from XML to RFC:com.sap.mw.jco.JCO$ConversionException: (122) JCO_ERROR_CONVERSION: Time '1' has a wrong format at field USERT1: Unparseable date: "1"


원인: 

위의 에러는 USERT1 필드 타입과 보내는 데이터와 맞지 않아 발생된 에러, 필드타입에 맞게 데이터를 수정해주니 정상적으러 처리완료


현상: 

xception in thread "main" AxisFault
 faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server
 faultSubcode:
 faultString: Server Error
 faultActor:
 faultNode:
 faultDetail:
 {http://sap.com/xi/WebService/xi2.0}SystemError:
          <context>XIAdapter</context>
          <code>ADAPTER.JAVA_EXCEPTION</code>
          <text><![CDATA[
com.sap.aii.af.mp.module.ModuleException: either no channelID specified or no channel found for the specified party, service, and channel name, MessageServlet(Version $Id: //tc/xi/NW701_03_REL/src/_adapters/_soap/java/com/sap/aii/af/mp/soap/web/MessageServlet.java#1 $)

 

원인: 채널정보가 잘못되어서 발생한 에러 7.0에서 WSDL생성할때 URL 수정하니com.sap.aii.af.mp.module.ModuleException 사라졌다.


현상: 

com.sap.aii.utilxi.misc.api.BaseRuntimeException:Element type "NVL" must be followed by either attribute specifications, ">" or "/>".</


원인 : 

Query ) NVL(Column) 별칭 <--- 왼쪽처럼 별칭을 기술해줘야하는데 이부분이 빠져서 발생한 에러


현상: 

com.sap.engine.interfaces.messaging.api.exception.MessagingException: Channel has reached maximum concurrency (5,000 concurrent messages) and no free resource found within 5,000 milliseconds; increase the maximum concurrency level

 

원인 : 

This error occurs when the channel has only few (minimum 1) resources in the pool(to connect the DB in parallel) and the messages load to that channel is high


기타내용정리


기존의 Proxy(필드 대문자) and SOAP(필드 대문자) 생성된 Message Mapping에서

Legacy에서 Naming Rule 지켜지지않아 WSDL 필드를 소문자로 변경해야한다고

EAI팀에 수정요청이 왔다.

이때 WSDL(소문자) Import했을시 매핑이 깨지며, 100 이상되는 필드를 다시 매핑작업을 한다는건 시간과 집중력이 필요할 것이다.

하지만 Legacy에서도 위와 같은 일이 발생했을때 EAI에서 수정을 안하고 Legacy에서 수정이 가능할 수도 있다.

방법은 XML에서 Annotation 사용하는건데, Annotation 자세한 부분에 대해서는 모르겠다.

Legacy에서 제시한 Annotation방법때문에 EAI에는 수정할 필요가 없어졌다. ㅎㅎㅎ


ID(Integration Builder) Additional Parameters 설정

logSQLStatement - Value[true | false]

SQL Server 2005에서 작동이 안될수도 있으며, 따로 설정하는 방법이 있는걸로 알고 있음 


poolWaitingTime - Value : 10000 == 10




댓글 없음:

댓글 쓰기