cancel
Showing results for 
Search instead for 
Did you mean: 

XIProxy:INTERFACE_REGISTRATION_ERROR

Former Member
0 Kudos

I have developed a Synchronous Proxy which has been saved and activated. I can successfully test it locally in the development CRM system (6.0).

When I call the proxy from a webservice (WSNavigator) from the PI7.1 (SP6) server, i get the following error:

<?xml version="1.0" encoding="UTF-8"?>
<!-- see the documentation -->
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
  <SOAP:Body>
    <SOAP:Fault>
      <faultcode>SOAP:Server</faultcode>
      <faultstring>Server Error</faultstring>
      <detail>
        <s:SystemError xmlns:s="http://sap.com/xi/WebService/xi2.0">
          <context>XIAdapter</context>
          <code>ADAPTER.JAVA_EXCEPTION</code>
          <text><![CDATA[
com.sap.engine.interfaces.messaging.api.exception.MessagingException: com.sap.engine.interfaces.messaging.api.exception.MessagingException: XIProxy:INTERFACE_REGISTRATION_ERROR:
	at com.sap.aii.adapter.soap.ejb.XISOAPAdapterBean.process(XISOAPAdapterBean.java:996)
	at sun.reflect.GeneratedMethodAccessor630.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:585)
	at com.sap.engine.services.ejb3.runtime.impl.RequestInvocationContext.proceedFinal(RequestInvocationContext.java:43)
	at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:166)
	at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatesTransition.invoke(Interceptors_StatesTransition.java:19)
	at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
	at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Resource.invoke(Interceptors_Resource.java:71)
	at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
	at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.doWorkWithAttribute(Interceptors_Transaction.java:38)
	at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.invoke(Interceptors_Transaction.java:22)
	at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
	at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:189)
	at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatelessInstanceGetter.invoke(Interceptors_StatelessInstanceGetter.java:16)
	at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
	at com.sap.engine.services.ejb3.runtime.impl.Interceptors_SecurityCheck.invoke(Interceptors_SecurityCheck.java:21)
	at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
	at com.sap.engine.services.ejb3.runtime.impl.Interceptors_ExceptionTracer.invoke(Interceptors_ExceptionTracer.java:16)
	at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
	at com.sap.engine.services.ejb3.runtime.impl.DefaultInvocationChainsManager.startChain(DefaultInvocationChainsManager.java:133)
	at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:164)
	at $Proxy2659.process(Unknown Source)
	at com.sap.aii.af.app.mp.ejb.ModuleProcessorBean.process(ModuleProcessorBean.java:275)
	at sun.reflect.GeneratedMethodAccessor475.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:585)
	at com.sap.engine.services.ejb3.runtime.impl.RequestInvocationContext.proceedFinal(RequestInvocationContext.java:43)
	at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:166)
	at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatesTransition.invoke(Interceptors_StatesTransition.java:19)
	at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
	at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Resource.invoke(Interceptors_Resource.java:71)
	at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
	at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.doWorkWithAttribute(Interceptors_Transaction.java:38)
	at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.invoke(Interceptors_Transaction.java:22)
	at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
	at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:189)
	at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatelessInstanceGetter.invoke(Interceptors_StatelessInstanceGetter.java:16)
	at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
	at com.sap.engine.services.ejb3.runtime.impl.Interceptors_SecurityCheck.invoke(Interceptors_SecurityCheck.java:21)
	at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
	at com.sap.engine.services.ejb3.runtime.impl.Interceptors_ExceptionTracer.invoke(Interceptors_ExceptionTracer.java:16)
	at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
	at com.sap.engine.services.ejb3.runtime.impl.DefaultInvocationChainsManager.startChain(DefaultInvocationChainsManager.java:133)
	at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:164)
	at $Proxy584.process(Unknown Source)
	at com.sap.aii.adapter.soap.web.MessageServlet.callModuleProcessor(MessageServlet.java:175)
	at com.sap.aii.adapter.soap.web.MessageServlet.doPost(MessageServlet.java:470)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
	at com.sap.engine.services.servlets_jsp.server.Invokable.invoke(Invokable.java:66)
	at com.sap.engine.services.servlets_jsp.server.Invokable.invoke(Invokable.java:32)
	at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:431)
	at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:289)
	at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:387)
	at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:376)
	at com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:85)
	at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:71)
	at com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:160)
	at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:71)
	at com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:67)
	at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
	at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:71)
	at com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)
	at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
	at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:71)
	at com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)
	at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
	at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:71)
	at com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)
	at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
	at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:71)
	at com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:309)
	at com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.run(Processor.java:222)
	at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
	at java.security.AccessController.doPrivileged(Native Method)
	at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:152)
	at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:247)
          
        
      
    
  
 ]]>

I have searched OSS and found two related notes, but are for old versions of PI and not relevant to 7.1...

https://service.sap.com/sap/support/notes/927620

https://service.sap.com/sap/support/notes/729310

I have deleted the proxy and regenerated it and activated it, but that has not worked either! Has anyone come across and resolved this error before????

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

One more thing, also use Stateless (XI 3.0 compatible) Interface Pattern for the Service Interface. This forces us to keep the opreation name same as that of the Service Inteface.

Former Member
0 Kudos

Hi

I think you are definately onto something here!

Although now i get this when I try and regenerate the proxy...

Internal Error (See Long Text)

Message no. SEU_MANAGER016

Diagnosis

Internal error: Method IF_WB_PROGRAM~GET_RESTORE_WB_REQUEST in \CLASS=CL_PROXY_WB_TOOL does not deliver any workbench request.

However, i will copy everything back to a new namespace and regenerate everything again then see how I get on from there!

I changed it to the XI3.0 Stateless and this forced the change I needed in the Service Interface!

Now the proxy does not work, but the WSDL is correct!

Answers (3)

Answers (3)

Former Member
0 Kudos

I faced the same problem with Asynchronous Interfaces, and solved it the way explained. Hope this helps.

Former Member
0 Kudos

I got this working in the end!

I made the change you suggested but when I generated the proxy, it was corrupted and gave the above message!

So i copied everything to a new namespace in the ESR, then recreated all the config in the ID, then regenerated the SPROXY, making sure I copied out my code in advance!!!

All done and working now!

Have 18 points!

Thanks again!

Former Member
0 Kudos

Hi Barry,

I'm facing the same issue when I try to create a new proxy.

Internal error: Method IF_WB_PROGRAM~GET_RESTORE_WB_REQUEST in \CLASS=CL_PROXY_WB_TOOL does not deliver any workbench request.

How did you fix it?

Regards,

Ricardo.

Former Member
0 Kudos

The namespace was corrupted in PI.

I copied everything to a new namespace and recreated everything.

took about 15 minutes to do all the config in the ESR and IB.

Former Member
0 Kudos

I created (copy from one namespace to another) my objects at ESR. Not yet in ID (configuration) and I'm still getting the error when I try to create a proxy from my new namespace and service.

Any ideas?

Thanks,

Ricardo.

Former Member
0 Kudos

somehow it is solved!

solution (what I did):

1- sxi_cache refresh at PI

2- leave the transaction and enter again, it will reconnect with ESR and refresh the data.

After these, I'm able to regenerate and create proxies at sproxy.

Thank you all,

Ricardo.

Former Member
0 Kudos

Hi Barry,

If you are using PI 7.1 and creating an ABAP proxy, please ensure that your operation name is same as that of the Service Interface.

PI 7.1 allows multiple operations and with names other than that of the Service Interface, however if using Proxy runtime to implement the processing it gives 'INTERFACE_REGISTRATION_ERROR'.

If you want to use a diffrent or multiple operation name then please use WS runtime at the backend to implement the business logic.

Former Member
0 Kudos

Hi Barry

Are you trying to generate proxy over an external definition service interface. or a copied object from another namespace.

Proxy has not been generated for the Service interface that is the reason you are getting this error.

Thanks

Gaurav

Former Member
0 Kudos

Thank you for your response, however as far as I am aware, I am doing neither.

The namespace remains the same and it is a standard PI Generated Object.

My other Proxies are working fine.

As I have previously stated, ALL objects are activated within SPROXY. Including the service interface the messgae types and the data types. as I have had to add considerable code to successfully test the Methods within the Service Interface.

Former Member
0 Kudos

After further analysis, i think i have nailed down the problem although I do not know where the information is coming from!

The WSDL has the wrong "Operation Name" which relates to very old configuration that has been deleted out of the system and when I try and recreate the Configuration, it puts the same information back in, depsite me clearing all the caches!!!