The WSSamServiceCMD utility can be used to create an Export of all Services in an SOI Manager.
In large implementations with a high number of Services, subservices and subsubservices it could happen that the WSSamServiceCMD used with the "-s*" option to export all services in one go crashes with a java exception error like this:
WSSamServiceCmd() - Adding Relationship for: Service:servicename,<service name>
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at com.sun.xml.internal.messaging.saaj.util.XMLDeclarationParser.parse(XMLDeclarationParser.java:79)
at com.sun.xml.internal.messaging.saaj.soap.SOAPPartImpl.lookForXmlDecl(SOAPPartImpl.java:645)
at com.sun.xml.internal.messaging.saaj.soap.ver1_2.SOAPPart1_2Impl.createEnvelopeFromSource(SOAPPart1_2Impl.java:66)
at com.sun.xml.internal.messaging.saaj.soap.SOAPPartImpl.getEnvelope(SOAPPartImpl.java:128)
at com.sun.xml.internal.messaging.saaj.soap.MessageImpl.getSOAPHeader(MessageImpl.java:1359)
at com.sun.ws.management.Message.init(Message.java:201)
at com.sun.ws.management.Message.<init>(Message.java:144)
at com.sun.ws.management.soap.SOAP.<init>(SOAP.java:79)
at com.sun.ws.management.addressing.Addressing.<init>(Addressing.java:94)
at com.sun.ws.management.transport.HttpClient.readResponse(HttpClient.java:368)
at com.sun.ws.management.transport.HttpClient.sendRequest(HttpClient.java:213)
at com.sun.ws.management.client.impl.TransferableResourceImpl.get(TransferableResourceImpl.java:540)
at com.sun.ws.management.client.impl.TransferableResourceImpl.get(TransferableResourceImpl.java:512)
at com.sun.ws.management.client.impl.TransferableResourceImpl.get(TransferableResourceImpl.java:500)
at com.ca.sam.webservice.client.WSSamServiceCmd.exportServices(WSSamServiceCmd.java:884)
at com.ca.sam.webservice.client.WSSamServiceCmd.main(WSSamServiceCmd.java:705)
Return code: 1
This problem can be resolved by increasing the java memory as follows:
- Edit soi-manager.conf file present in <SOI_HOME>/jsw/conf folder
Double the values of the following variables
set.JAVA_MAX_PERM_SIZE=160m
set.JAVA_INITMEM_MB=128
set.JAVA_MAXMEM_MB=1024
- Edit wrapper-jvm-64.conf file present in <SOI_HOME>/jsw/conf folder
Double the values of the following variables
- set.JAVA_MAX_PERM_SIZE=160m
- set.JAVA_INITMEM_MB=128
- set.JAVA_MAXMEM_MB=1024
- Edit file WSSamServiceCmd.bat located in <SOI_HOME>/tomcat/bin folder
In line set PATH=%IFW_HOME%\jre\bin;%PATH%; replace to set PATH=%IFW_HOME%\jre-64\bin;%PATH%;
After making all these changes please restart the SOI services.
SOI\tools\soitoolbox --stopAllServices
SOI\tools\soitoolbox --startAllServices
open http://<soi manager>:7090/sam/debug - Triage Tests
verify when the SOI Manager startup process is complete.
Once the services startup is complete, run the WSSamServiceCMD export command.