Announcement Announcement Module
Collapse
No announcement yet.
OutOfMemoryError on WebSphere Application Server 7 with encryption Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • OutOfMemoryError on WebSphere Application Server 7 with encryption

    Hi.

    I wrote an webservice on the tomcat with wssa4j. Every with works fine. Now my customer want to use a "WebSphere Application Server 7.0". I can install the application without an error.

    When I test an encrypted call I get an "OutOfMemoryError".

    Can anybody help me?

    The service uses following config:

    Code:
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
    	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
    
    	<bean id="logging"
    		class="org.springframework.ws.server.endpoint.interceptor.PayloadLoggingInterceptor" />
    
    	<bean id="security"
    		class="org.springframework.ws.soap.security.wss4j.Wss4jSecurityInterceptor">
    		<property name="validationActions" value="UsernameToken Encrypt" />
    		<property name="validationDecryptionCrypto">
    			<bean
    				class="org.springframework.ws.soap.security.wss4j.support.CryptoFactoryBean">
    				<property name="keyStorePassword" value="password" />
    				<property name="keyStoreLocation" value="classpath:/key.jks" />
    			</bean>
    		</property>
    		<property name="validationCallbackHandlers">
    			<list>
    				<ref local="uservalidator" />
    				<ref local="keystoreCallbackHandler" />
    			</list>
    		</property>
    		<property name="securementActions" value="" />
    		<property name="securementUsername" value="service" />
    		<property name="securementPassword" value="password" />
    		<property name="securementSignatureCrypto">
    			<bean
    				class="org.springframework.ws.soap.security.wss4j.support.CryptoFactoryBean">
    				<property name="keyStorePassword" value="password" />
    				<property name="keyStoreLocation" value="classpath:/key.jks" />
    			</bean>
    		</property>
    		<property name="securementSignatureParts" value="{}{Null}return" />
    	</bean>
    
    	<bean id="uservalidator"
    		class="org.springframework.ws.soap.security.wss4j.callback.SimplePasswordValidationCallbackHandler">
    		<property name="users">
    			<props>
    				<prop key="user1">user1</prop>
    				<prop key="user2">user2</prop>
    			</props>
    		</property>
    	</bean>
    
    	<bean id="keystoreCallbackHandler"
    		class="org.springframework.ws.soap.security.wss4j.callback.KeyStoreCallbackHandler">
    		<property name="privateKeyPassword" value="password" />
    	</bean>
    
    	<bean id="marshaller" class="org.springframework.oxm.jaxb.Jaxb2Marshaller">
    		<property name="contextPath" value="--contextpath--" />
    		<property name="schema" value="classpath:/--service--.xsd" />
    	</bean>
    
    	<bean id="endpoint" class="--package--.ServiceEndpoint">
    		<constructor-arg ref="marshaller" />
    	</bean>
    
    	<bean
    		class="org.springframework.ws.server.endpoint.mapping.PayloadRootQNameEndpointMapping">
    		<property name="mappings">
    			<props>
    				<prop key="{http://xxx.xxx.xxx/xxx}serviceRequest">endpoint</prop>
    			</props>
    		</property>
    		<property name="interceptors">
    			<list>
    				<ref bean="logging" />
    				<ref bean="security" />
    			</list>
    		</property>
    	</bean>
    
    	<bean id="servicewsdl"
    		class="org.springframework.ws.wsdl.wsdl11.DefaultWsdl11Definition">
    		<property name="schema" ref="schema" />
    		<property name="portTypeName" value="service" />
    		<property name="locationUri" value="http://localhost:8080/xxx/xxx/" />
    		<property name="targetNamespace" value="http://xxx.xxx.xxx/xxx" />
    	</bean>
    
    	<bean id="schema" class="org.springframework.xml.xsd.SimpleXsdSchema">
    		<property name="xsd" value="classpath:/--service--.xsd" />
    	</bean>
    
    </beans>
    Error:

    Code:
    [17.05.10 16:01:22:812 CEST] 00000061 SystemErr     R Exception in thread "LT=2:P=504231:O=0:port=9404" java.lang.OutOfMemoryError
    [17.05.10 16:01:22:812 CEST] 00000061 SystemErr     R 	at com.ibm.jsse2.sc.a(sc.java:3)
    [17.05.10 16:01:22:812 CEST] 00000061 SystemErr     R 	at com.ibm.jsse2.sc.<init>(sc.java:293)
    [17.05.10 16:01:22:812 CEST] 00000061 SystemErr     R 	at com.ibm.jsse2.qc.accept(qc.java:74)
    [17.05.10 16:01:22:812 CEST] 00000061 SystemErr     R 	at com.ibm.rmi.transport.ListenerThread.run(ListenerThread.java:174)
    [17.05.10 16:01:22:827 CEST] 00000060 SystemErr     R java.lang.OutOfMemoryError
    [17.05.10 16:01:22:827 CEST] 00000060 SystemErr     R 	at sun.nio.cs.MS1252.newEncoder(MS1252.java:55)
    [17.05.10 16:01:22:827 CEST] 00000060 SystemErr     R 	at sun.nio.cs.StreamEncoder$CharsetSE.<init>(StreamEncoder.java:297)
    [17.05.10 16:01:22:827 CEST] 00000060 SystemErr     R 	at sun.nio.cs.StreamEncoder$CharsetSE.<init>(StreamEncoder.java:281)
    [17.05.10 16:01:22:827 CEST] 00000060 SystemErr     R 	at sun.nio.cs.StreamEncoder.forOutputStreamWriter(StreamEncoder.java:80)
    [17.05.10 16:01:22:827 CEST] 00000060 SystemErr     R 	at java.io.OutputStreamWriter.<init>(OutputStreamWriter.java:102)
    [17.05.10 16:01:22:827 CEST] 00000060 SystemErr     R 	at java.io.PrintStream.<init>(PrintStream.java:113)
    [17.05.10 16:01:22:827 CEST] 00000060 SystemErr     R 	at java.io.PrintStream.<init>(PrintStream.java:75)
    [17.05.10 16:01:22:827 CEST] 00000060 SystemErr     R 	at com.ibm.ejs.ras.StreamEvent6.writeSelfToStream(StreamEvent6.java:137)
    [17.05.10 16:01:22:827 CEST] 00000060 SystemErr     R 	at com.ibm.ejs.ras.SystemStream.doPrint(SystemStream.java:763)
    [17.05.10 16:01:22:827 CEST] 00000060 SystemErr     R 	at com.ibm.ejs.ras.SystemStream.print(SystemStream.java:515)
    [17.05.10 16:01:22:827 CEST] 00000060 SystemErr     R 	at com.ibm.ejs.ras.SystemErrStream.print(SystemErrStream.java:64)
    [17.05.10 16:01:22:827 CEST] 00000060 SystemErr     R 	at java.io.PrintStream.append(PrintStream.java:1028)
    [17.05.10 16:01:22:827 CEST] 00000060 SystemErr     R 	at java.io.PrintStream.append(PrintStream.java:40)
    [17.05.10 16:01:22:827 CEST] 00000060 SystemErr     R 	at java.lang.StackTraceElement.appendTo(StackTraceElement.java:180)
    [17.05.10 16:01:22:827 CEST] 00000060 SystemErr     R 	at java.lang.Throwable.appendTo(Throwable.java:305)
    [17.05.10 16:01:22:827 CEST] 00000060 SystemErr     R 	at java.lang.Throwable.printStackTrace(Throwable.java:374)
    [17.05.10 16:01:22:843 CEST] 00000060 SystemErr     R 	at java.lang.Throwable.printStackTrace(Throwable.java:212)
    [17.05.10 16:01:22:843 CEST] 00000060 SystemErr     R 	at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:773)
    [17.05.10 16:01:22:843 CEST] 00000060 SystemErr     R 	at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:766)
    [17.05.10 16:01:22:843 CEST] 00000060 SystemErr     R 	at java.lang.Thread.uncaughtException(Thread.java:1213)

  • #2
    Server issue, I think

    It looks like your "OutOfMemoryError" is related to the server configuration...
    I deem there is should be settings for memory size of your Application pool. Check the config, or contact your admin and ask to check it and increase the size of your memory.

    Regards,
    Lex C.
    SWF Protector

    Comment


    • #3
      WAS JVM initial memory size

      Try to increase initial memory size - should help. Typically, I set initial memory size to 512Mb and maximum to 1Gb.

      Comment

      Working...
      X