Showing posts with label XI/PI. Show all posts
Showing posts with label XI/PI. Show all posts

Wednesday, September 28, 2016

Error: 500 Internal Server Errors



Description: The server encountered an unexpected condition which prevented it from fulfilling the request.

Possible Tips: Have a look into SAP – 804124, 807000

Error: 405 Method Not Allowed

Error: 405 Method Not Allowed

Description:The method specified in the Request-Line is not allowed for the resource identified by the Request-URL

Possible Tips: ICM_HTTP_INTERNAL_ERROR - Refer SAP 90643

Monday, September 19, 2016

404 Resource not found

Partner not reached

Error:     -20
Component: ICM
Module:    icxxconn.c
Detail: Connection request from (XXX) to host: XXX, service: XXX failed (NIECONN_REFUSED)


if found this error in SXMB_MONI message or if fSMQ2 queues are stopped due to this error.


Solution: Need to set this Parameter icm/conn_timeout is used to set the timeout when setting up the connection.
If the timeout is exceeded, an error page is generally displayed with the information
"404 Resource not found" "Partner not reached".


Description: The server has not found anything matching the Request-URI. No indication is given of whether the condition is temporary or permanent. The 410 (Gone) status code SHOULD be used if the server knows, through some internally configurable mechanism, that an old resource is permanently unavailable and has no forwarding address. This status code is commonly used when the server does not wish to reveal exactly why the request has been refused, or when no other response is applicable.
Possible Tips:- for HTTP_RESP_STATUS_CODE_NOT_OK 404

• 404 is an HTTP response code that indicates that the resource in question couldn't be found. Usually this is due to an incorrect URL, so it is better to cross check all URLs. Check pipeline URL in the SLD in the business system of the Integration Server For this go to SLD->Business System->->Pipeline URL: It should be like this http://:/sap/xi/engine?type=entry Where host is the host name of the Integration Server and port is the HTTP(8xxx) port. To verify this in Integration Server you can do like this.

Go to SXMB_ADM->Integration Engine Configuration->Choose Edit from Menu -> Change Global Configuration Data to switch to change mode. Then select System Landscape - Load Configuration. (This is not required always)

• Check that the port really is the ICM HTTP Port and not the J2EE port i.e SMICM then menu GOTO --> SERVICES and check the port number for HTTP. It should be HTTP port

• If the error is Page cannot be displayed, cannot find server in https configurations Check and correct the SSL configuration for the ABAP and the J2EE side of the system

• If the error is because of integration server when using Proxy communications then check these. i.e SXMB_ADM->Integration Engine Configuration->Corresponding Integration Server enrty should be dest:// Where < Http Integration server -Destination > is the RFC destination (SM59) of type HTTP connection (type H) to the Integration Server. In this case, host name, port, and path prefix are saved in the RFC destination.

com.sap.aii.ib.core.abapcache.CacheRefreshException: Tag empty is not permitted as a root element. definitions is expected.

while doing cache refresh if you get this error

T-code:SXI_CACHE, go to context menu 'Runtime Cache' and execute Start Delta/Complete Cache Refresh


In recent release of SAP pre-delivered ESR(XI) contents, there're invalid IDoc/RFC definitions which have empty/container tag as the root element or some IDocs/RFCs defined in the ESR are inconsistent and their definition needs to be re-imported into the ESR

E.g.

SAP SRM SERVER 5.0
SWIFT 622
SAP BASIS 6.20
SAP BASIS 7.11
SAP BASIS 7.31
SRM SERVER 7.0
SRM SERVER IC 7.02

This will cause cache refresh to fail with the mentioned error.

Solution

There're mainly 3 ways to resolve this:

Option 1:
Delete the Software component version(SWCV) directly in ESR or if the incorrect IDoc/RFC definitions are known
          then delete them and activate the deletion.



Option 2:
Re-import and correct the IDoc definition from the source system. This is only recommended for custom SWCV.


Option 3:
Create message in corresponding component (e.g SRM, CRM ....) and reuqest to fix the XI/ESR content.
In case of SAP delivered content, instead of deleting the entire SWCV(since you're probably going to use it),

you can temporarily change the SWCV to modifiable and only delete the incorrect IDoc/RFC. When SAP delivers

a patch of that content with the correct IDoc/RFC, you can delete the SWCV then import the patch again.

After re-import verify if the import was successful by opening the IDoc/RFC in the editor in the ESR.

Wednesday, August 17, 2016

XI/PI Error: HTTP 403 Forbidden

Home



Description: The server understood the request, but is refusing to fulfill it
Possible Tips:

Path sap/xi/engine not active

• HTTP 403 during cache refresh of the adapter framework - Refer SAP Note -751856
• Because of Inactive Services in ICF –Go to SICF transaction and activate the services. Refer SAP Note -517484
• Error in RWB/Message Monitoring- because of J2EE roles – Refer SAP Note -796726
• Error in SOAP Adapter - "403 Forbidden" from the adapter's servlet. –Because of the URL is incorrect or the adapter is not correctly deployed.

XI/PI -- Error: HTTP 400- Bad Request- ICM_HTTP_CONNECTION_FAILED

Home



Description: The request could not be understood by the server due to malformed syntax. The client SHOULD NOT repeat the request without modifications.

Possible Tips: May be because of huge message flow.

Related SAP Notes-824554, 906435, 783515, 910649, 706563

If it is because of Queue problems have a look into SMQ2 and then  Re-Process failed XI Messages Automatically

XI/PI - HTTP Code 200 OK

Home


HTTP Code 200 OK

Description: The request has succeeded. The information returned with the response is dependent on the method used in the request GET an entity corresponding to requested resource is sent in the response; HEAD the entity-header fields corresponding to the requested resource are sent in the response without any message-body; POST an entity describing or containing the result of the action;
TRACE an entity containing the request message as received by the end server.

Possible Tips: Have a look into SAP Note: 871959

XI/PI -- Error: HTTP_RESP_STATUS_CODE_NOT_OK 401 Unauthorized

Home


Error: HTTP_RESP_STATUS_CODE_NOT_OK 401 Unauthorized

Possible Tips:
• Check XIAPPLUSER is having this Role -SAP_XI_APPL_SERV_USER
• If the error is in XI Adapter, then your port entry should J2EE port 5<System no>
• If the error is in Adapter Engine

Then have a look into SAP note- 821026, Delete the Adapter Engine cache in transaction SXI_CACHE Goto --> Cache.
• May be wrong password for user XIISUSER
• May be wrong password for user XIAFUSER

- for this Check the Exchange Profile and transaction SU01, try to reset the password -Restart the J2EE Engine to activate changes in the
Exchange Profile After doing this, you can restart the message

- Go to SM59 and check your http connection, also check maintained rfc user has proper authorizations or not.

- Instead of testing the interface from adapter engine, test it with your integration engine with the correct user credentials. It should work.


SSO (Single sighn on)

Home


Procedure for SSO

1) Export certificate from portal (verifyder and verifypse)
 
a) Navigate to 'System Administration' >> 'System configuration' >> 'Keystore Administration'

 b) in 'Content' select "SAPLogonTicketKeypar-cert" and press'n'save "Download verifypse file" and "Download verifyder file"

2) Check existence of SAPJSF user in target system a) Create if necessary using transaction SU01
 
b) User should have two roles: SAP_BC_JSF_COMMUNICATION and   
                                             SAP_BC_USR_CUA_CLIENT_RFC (if you have CUA in place)
 c) Probably you will have to generate profiles for those roles in target system (transaction PFCG)

3) Check profile parameters
 a) use transaction RZ10

 b) choose instance profile, 'extended maintenance', then 'Change'

 c) make sure that "login/create_sso2_ticket" is set to "2" and "login/accepte_sso2_ticket" set to "1"

4) Export certificate from target system (the system to which you want to connect using SSO from portal)
 a) use transaction STRUSTSSO2

 b) double-click on "Own Certif" on "CN=" part

 c) press on "Export certificate" button in the middle of the screen and provide file name and  
      path, where to save certificate file

5) Import portal certificate to target system
 a) Use transaction STRUSTSSO2 in target system

 b) push "Import certificate" button in the middle of the screen

 c) in 'File path' field enter path to *der file, you created in step 1 (or point at it via 'Browse'  
     button)

 d) Press "Enter"

 e) Press 'Add to certificate list' button and then 'Add to ACL button

6) Create an JCo RFC provider in J2EE engine of portal system
 a) Logon to J2EE using J2EE Admin tool (gobat)

 b) navigate to 'Server' >> 'JCo RFC provider' node

 c) On the right side of the screen choose any entry in 'Available RFC destinations' area

 d) Enter information about new destination:
  - Program ID: name of the program (you will need it later) - sapj2ee_port, for example
  - Gateway host - FQDN of target system - serverdomaincom, for example
  - Gateway service - sapgw00 for example

 e) in 'Repository' section enter:
  - Application server host - FQDN of target system - serverdomaincom, for example
  - system number - 00, for example
  - client - 100, for example
  - logon language - EN
  - user - SAPJSF (from step 2)
  - password (from step 2)

 f) press 'Set'

7) Add target system to Security providers list
 a) Open J2EE Admin and navigate to 'Server' >> 'Services' >> 'Security Provider' In components
     select 'Ticket' Enter edit mode (button with pencil above)

 b) select 'Login module' "comsapsecuritycoreserverjaasEvaluateTicketLoginModule" and press
     'Modify'

 c) ensure that "umeconfigurationactive" is set to "true"

 d) enter following info:
  - Name - 'trustedsysN' (there should be a number instead "N", if target system is the first one you implementing SSO with, there should be 'trustedsys1') Enter <SID>,<client> as a value (C11,100 for example)
  - Name - 'trustedissN' (there should be a number instead "N", if target system is the first one you implementing SSO with, there should be 'trustediss1') Enter CN=<SID> as a value (CN=C11 for example)
  - Name - 'trusteddnN' (there should be a number instead "N", if target system is the first one you implementing SSO with, there should be 'trusteddn1') Enter CN=<SID> as a value (CN=C11 for example)

 e) Press 'OK'

 f) Do substeps b,c,d,e in 'evaluate_assertion_ticket' view for "comsapsecuritycoreserverjaasEvaluateAssertionTicketLoginModule" login module

8) Import target system certificate to J2EE of portal system (from step 4) a) Open J2EE Administrator and logon to portal instance

 b) Navigate to 'Server" >> 'Services' >> 'Key storage'

 c) in 'Ticket keystore' view press 'load' and select certificate of target system, you exported in step 3








9) Restart J2EE instance

10) Create RFC connection in target system

 a) use transaction SM59

 b) Point to TCP/IP connections and press 'New'

 c) Enter name for new connection ("RFC_to_portal", for example), enter connection type "T" (external TCP/IP application) and description Save

 d) in 'Technical settings' choose "Registered server program" and enter application name from step 6d in "Program ID" field Provide 'Gateway host' and 'Gateway service' same as in step 6d Save Test connection RFC connection ready