Skip to Content
avatar image
Former Member

Unable to remove Service Definitions from Registry in PI7.1

We are getting java errors trying to pulish web services from the Integration Builder and now the Service registry has errors in that we wish to remove.

Error:

java.lang.NullPointerException

at com.sap.aii.ibdir.server.wsquery.WSQUDDISDResolveTB.execute(WSQUDDISDResolveTB.java:127)

at com.sap.aii.ibdir.core.simulation.DefaultTaskBroker.execute(DefaultTaskBroker.java:158)

at com.sap.aii.ibdir.server.simulation.TaskQueryService.specialQuery(TaskQueryService.java:31)

at com.sap.aii.ib.server.query.SpecialQueryServiceProvider$SpecialQueryServiceImpl.specialQuery(SpecialQueryServiceProvider.java:63)

at com.sap.aii.ib.server.query.QueryServiceImpl.specialQuery(QueryServiceImpl.java:443)

at com.sap.aii.ib.server.query.QueryServiceBean.specialQuery(QueryServiceBean.java:112)

at sun.reflect.GeneratedMethodAccessor534.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 $Proxy2177.specialQuery(Unknown Source)

at sun.reflect.GeneratedMethodAccessor533.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.rmi_p4.P4DynamicSkeleton.dispatch(P4DynamicSkeleton.java:234)

at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:351)

at com.sap.engine.services.rmi_p4.server.ServerDispatchImpl.run(ServerDispatchImpl.java:70)

at com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:62)

at com.sap.engine.services.rmi_p4.P4Message.execute(P4Message.java:37)

at com.sap.engine.services.cross.fca.FCAConnectorImpl.executeRequest(FCAConnectorImpl.java:872)

at com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:53)

at com.sap.engine.services.cross.fca.MessageReader.run(MessageReader.java:58)

at com.sap.engine.core.thread.execution.Executable.run(Executable.java:108)

at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:304)

The webservices are obsolete and need to be removed as it is stopping us publishing more with the same name.

I found this on SDN:

https://www.sdn.sap.com/irj/sdn/nw-soa?rid=/webcontent/uuid/00fabd90-

c854-2b10-419f-b601de1cd227#section172

How can I delete services in the Services Registry?

The concept of the Services Registry sees the content of the registry as a mirror of the various backend systems from which you publish into the registry. To ensure consistency, you should not manually delete

service definitions from the registry, but instead it is recommended to use the publication rules functionality of SAP NetWeaver Administrator (Java) and SOA Manager (ABAP) to u2018unpublish' service definitions that

are no longer required.

However, if you still need to delete service definitions, you can make use of the corresponding API and manually remove service definitions.

but there is nothing to tell us how to do it! This is holding up our development now.

Add comment
10|10000 characters needed characters exceeded

  • Follow
  • Get RSS Feed

3 Answers

  • Best Answer
    avatar image
    Former Member
    Sep 09, 2009 at 12:21 PM

    Barry,

    Please can you elaborate on how to then delete services that was published from SAP PI Integration Directeory (ID)?

    Do you first have delete the Sender agreement from ID and then do the hide Web Service in SOA Management?

    Regards

    Willie Hugo

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member

      We did not delete the sender agreements first.

      we just followed these steps:

      Log onto NWA

      Select SOA Management

      Select Business Administration

      Select Web Service Administration

      Search for u201CServicesRegistrySiu201D

      Click Test in WS Navigator

      Scroll down and select

      hideServiceDefinitions

      Click Add Entry in ServiceDefinitionKeys

      Get Logical Key of Webservice from Service Registry

      Hit Execute

  • avatar image
    Former Member
    Oct 20, 2008 at 12:25 PM

    Hi

    Can you try the following approach to delete services?

    Determine the WSDL Url of your Services Registry.

    - Open SAP NetWeaver Administrator and choose SOA Management Application and Scenario Communication Single Service Administration .

    - Search for ServicesRegistrySi and copy the Services Registry WSDL.

    Open WS Navigator.

    In the WSDL Url field, enter the Services Registry WSDL and choose Next.

    All Services Registry API operations are displayed.

    Select operation hideServiceDefinitions and choose Next.

    Enter either the UDDI key or the logical key of the service definition you want to delete and choose Execute.

    Both keys are displayed on the General tab in the Services Registry.

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member Former Member

      Barry,

      I'm having a similar issue. My SR shows me as having no logical key for the service I am interested in removing, although I was able to do a workaround.

      There is another operation, findServiceDefintions, that can be used to search a name that will return the UDDI key. Take that value and plug it into the hideServiceDefintions uddiKey value.

  • avatar image
    Former Member
    Aug 05, 2009 at 05:59 PM

    Can Hide the entries that we can, but cannot delete the ones without ID.

    Add comment
    10|10000 characters needed characters exceeded