Environment
Novell GroupWise 8 Support Pack 1
Novell Identity Manager Roles Based Provisioning Module 3.6.1
Situation
Upgrading to Groupwise 8/SP1, causes all 4 GroupWise portlets within
Novell Identity Manager Roles Based Provisioning Module 3.6.1 to fail when attempting to access them.
The following exception is thrown:
[9/1/09 14:15:07:509 MDT] 00000030 SystemOut O 14:15:07,509 ERROR
[GWMailPortlet] An internal error occurred
sun.io.MalformedInputException
at sun.io.ByteToCharUTF8.convert(ByteToCharUTF8.java:262)
at sun.nio.cs.StreamDecoder$ConverterSD.convertInto(StreamDecoder.java:316)
at sun.nio.cs.StreamDecoder$ConverterSD.implRead(StreamDecoder.java:366)
at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:252)
at java.io.InputStreamReader.read(InputStreamReader.java:212)
at java.io.BufferedReader.fill(BufferedReader.java:157)
at java.io.BufferedReader.readLine(BufferedReader.java:320)
at java.io.BufferedReader.readLine(BufferedReader.java:383)
Resolution
Disabling the Apache server compression in \\SYS\apache2\conf\GWApache2.conf
will solve this problem. The IDM GroupWise portlets appear to not handle the
compression. The compression section is at the bottom of the file and should
look like this when commented out:
####################################################################
# This module compresses the server output before sending it
# to the client. Apache does not load this module by default.
#<IfModule !mod_deflate.c>
# LoadModule deflate_module modules/deflate.nlm
#</IfModule>
#<IfModule mod_deflate.c>
# <Location /gw/>
# SetOutputFilter DEFLATE
# AddOutputFilterByType DEFLATE text/* application/javascript
# </Location>
#</IfModule>
####################################################################
A restart of Apache will be necessary after this modification.
will solve this problem. The IDM GroupWise portlets appear to not handle the
compression. The compression section is at the bottom of the file and should
look like this when commented out:
####################################################################
# This module compresses the server output before sending it
# to the client. Apache does not load this module by default.
#<IfModule !mod_deflate.c>
# LoadModule deflate_module modules/deflate.nlm
#</IfModule>
#<IfModule mod_deflate.c>
# <Location /gw/>
# SetOutputFilter DEFLATE
# AddOutputFilterByType DEFLATE text/* application/javascript
# </Location>
#</IfModule>
####################################################################
A restart of Apache will be necessary after this modification.
Additional Information
Complete exception:
[9/1/09 14:15:07:509 MDT] 00000030 SystemOut O 14:15:07,509 ERROR
[GWMailPortlet] An internal error occurred
sun.io.MalformedInputException
at sun.io.ByteToCharUTF8.convert(ByteToCharUTF8.java:262)
at sun.nio.cs.StreamDecoder$ConverterSD.convertInto(StreamDecoder.java:316)
at sun.nio.cs.StreamDecoder$ConverterSD.implRead(StreamDecoder.java:366)
at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:252)
at java.io.InputStreamReader.read(InputStreamReader.java:212)
at java.io.BufferedReader.fill(BufferedReader.java:157)
at java.io.BufferedReader.readLine(BufferedReader.java:320)
at java.io.BufferedReader.readLine(BufferedReader.java:383)
at
com.novell.afw.portal.portlet.groupwise.GWHttp.retrievePage(GWHttp.java:464)
at
com.novell.afw.portal.portlet.groupwise.GWHttp.getHttpPage(GWHttp.java:493)
at com.novell.afw.portal.portlet.groupwise.GWHttp.login(GWHttp.java:304)
at
com.novell.afw.portal.portlet.groupwise.GWMailPortlet.gwConnect(GWMailPortlet.java:461)
at
com.novell.afw.portal.portlet.groupwise.GWMailPortlet.doView(GWMailPortlet.java:302)
at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:235)
at javax.portlet.GenericPortlet.render(GenericPortlet.java:163)
at com.novell.soa.portlet.IDMBasePortlet.render(IDMBasePortlet.java:86)
at
com.novell.afw.portlet.core.EboPortletContainer.processOperation(EboPortletContainer.java:434)
at
com.novell.afw.portlet.core.EboPortletContainer.getMarkup(EboPortletContainer.java:215)
at
com.novell.afw.portal.aggregation.EboPortletProxyHelper.renderPortlet(EboPortletProxyHelper.java:279)
at
com.novell.afw.portal.aggregation.EboPortalAggregationHelper.renderSynchPortlets(EboPortalAggregationHelper.java:1239)
at
com.novell.afw.portal.aggregation.EboPortalAggregationHelper.callRender(EboPortalAggregationHelper.java:1328)
at
com.novell.afw.portal.aggregation.EboPortalAggregationControllerImpl.initiateRendering(EboPortalAggregationControllerImpl.java:1374)
at
com.novell.afw.portal.aggregation.EboPortalAggregationControllerImpl.renderPortalResponse(EboPortalAggregationControllerImpl.java:663)
at
com.novell.afw.portal.aggregation.EboPortalAggregationServlet.handlePortalContainerRequest(EboPortalAggregationServlet.java:682)
at
com.novell.afw.portal.aggregation.EboPortalAggregationServlet.callService(EboPortalAggregationServlet.java:331)
at
com.novell.afw.portal.aggregation.EboPortalAggregationServlet.doGet(EboPortalAggregationServlet.java:137)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1095)
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1036)
at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:145)
at
com.novell.common.AntiCsrfServletFilter.doFilter(AntiCsrfServletFilter.java:205)
at
com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
at
com.novell.afw.portal.i18n.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:141)
at
com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
at com.novell.common.auth.JAASFilter.doFilter(JAASFilter.java:107)
at
com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
at
com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:87)
at
com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:832)
at
com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:679)
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:565)
at
com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478)
at
com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:90)
at
com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:748)
at
com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1461)
at
com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:118)
at
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
at
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
at
com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
at
com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at
com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at
com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:195)
at
com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:743)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:873)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1473)
[9/1/09 14:15:07:540 MDT] 00000030 SRTServletRes W WARNING: Cannot set
header. Response already committed.
[GWMailPortlet] An internal error occurred
sun.io.MalformedInputException
at sun.io.ByteToCharUTF8.convert(ByteToCharUTF8.java:262)
at sun.nio.cs.StreamDecoder$ConverterSD.convertInto(StreamDecoder.java:316)
at sun.nio.cs.StreamDecoder$ConverterSD.implRead(StreamDecoder.java:366)
at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:252)
at java.io.InputStreamReader.read(InputStreamReader.java:212)
at java.io.BufferedReader.fill(BufferedReader.java:157)
at java.io.BufferedReader.readLine(BufferedReader.java:320)
at java.io.BufferedReader.readLine(BufferedReader.java:383)
at
com.novell.afw.portal.portlet.groupwise.GWHttp.retrievePage(GWHttp.java:464)
at
com.novell.afw.portal.portlet.groupwise.GWHttp.getHttpPage(GWHttp.java:493)
at com.novell.afw.portal.portlet.groupwise.GWHttp.login(GWHttp.java:304)
at
com.novell.afw.portal.portlet.groupwise.GWMailPortlet.gwConnect(GWMailPortlet.java:461)
at
com.novell.afw.portal.portlet.groupwise.GWMailPortlet.doView(GWMailPortlet.java:302)
at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:235)
at javax.portlet.GenericPortlet.render(GenericPortlet.java:163)
at com.novell.soa.portlet.IDMBasePortlet.render(IDMBasePortlet.java:86)
at
com.novell.afw.portlet.core.EboPortletContainer.processOperation(EboPortletContainer.java:434)
at
com.novell.afw.portlet.core.EboPortletContainer.getMarkup(EboPortletContainer.java:215)
at
com.novell.afw.portal.aggregation.EboPortletProxyHelper.renderPortlet(EboPortletProxyHelper.java:279)
at
com.novell.afw.portal.aggregation.EboPortalAggregationHelper.renderSynchPortlets(EboPortalAggregationHelper.java:1239)
at
com.novell.afw.portal.aggregation.EboPortalAggregationHelper.callRender(EboPortalAggregationHelper.java:1328)
at
com.novell.afw.portal.aggregation.EboPortalAggregationControllerImpl.initiateRendering(EboPortalAggregationControllerImpl.java:1374)
at
com.novell.afw.portal.aggregation.EboPortalAggregationControllerImpl.renderPortalResponse(EboPortalAggregationControllerImpl.java:663)
at
com.novell.afw.portal.aggregation.EboPortalAggregationServlet.handlePortalContainerRequest(EboPortalAggregationServlet.java:682)
at
com.novell.afw.portal.aggregation.EboPortalAggregationServlet.callService(EboPortalAggregationServlet.java:331)
at
com.novell.afw.portal.aggregation.EboPortalAggregationServlet.doGet(EboPortalAggregationServlet.java:137)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1095)
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1036)
at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:145)
at
com.novell.common.AntiCsrfServletFilter.doFilter(AntiCsrfServletFilter.java:205)
at
com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
at
com.novell.afw.portal.i18n.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:141)
at
com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
at com.novell.common.auth.JAASFilter.doFilter(JAASFilter.java:107)
at
com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
at
com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:87)
at
com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:832)
at
com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:679)
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:565)
at
com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478)
at
com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:90)
at
com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:748)
at
com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1461)
at
com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:118)
at
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
at
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
at
com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
at
com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at
com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at
com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:195)
at
com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:743)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:873)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1473)
[9/1/09 14:15:07:540 MDT] 00000030 SRTServletRes W WARNING: Cannot set
header. Response already committed.