[jboss-user] [JBoss Portal] - wsrp locale problem

Lightguard do-not-reply at jboss.com
Thu Jun 12 10:29:10 EDT 2008


I've been following the posts about consumer agent issues with SAP (specifically http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4137793#4137793) and downloaded, and built portal 2.7.  Everything seems to be running fine with the registration and whatnot when I relax the consumer agent validation (cookies seem to be working great too).  Now I have a problem when I try to view the portlet.  Here's the stack trace:

07:35:46,064 ERROR [SOAPFaultHelperJAXRPC] SOAP request exception
  | java.lang.IllegalArgumentException
  |     at org.jboss.portal.wsrp.WSRPUtils.getLocale(WSRPUtils.java:434)
  |     at org.jboss.portal.wsrp.UserContextConverter$WSRPMappedUserContext.<init>(UserContextConverter.java:159)
  |     at org.jboss.portal.wsrp.UserContextConverter.createPortalUserContextFrom(UserContextConverter.java:60)
  |     at org.jboss.portal.wsrp.producer.RequestProcessor.createUserContext(RequestProcessor.java:395)
  |     at org.jboss.portal.wsrp.producer.RequestProcessor.prepareInvocation(RequestProcessor.java:147)
  |     at org.jboss.portal.wsrp.producer.RenderRequestProcessor.<init>(RenderRequestProcessor.java:68)
  |     at org.jboss.portal.wsrp.producer.MarkupHandler.getMarkup(MarkupHandler.java:88)
  |     at org.jboss.portal.wsrp.producer.WSRPProducerImpl.getMarkup(WSRPProducerImpl.java:181)
  |     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  |     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |     at java.lang.reflect.Method.invoke(Method.java:585)
  |     at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
  |     at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
  |     at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
  |     at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
  |     at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
  |     at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
  |     at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
  |     at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
  |     at org.jboss.mx.util.JMXInvocationHandler.invoke(JMXInvocationHandler.java:287)
  |     at $Proxy419.getMarkup(Unknown Source)
  |     at org.jboss.portal.wsrp.endpoints.MarkupEndpoint.getMarkup(MarkupEndpoint.java:61)
  |     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  |     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |     at java.lang.reflect.Method.invoke(Method.java:585)
  |     at org.jboss.wsf.container.jboss42.DefaultInvocationHandler.invoke(DefaultInvocationHandler.java:102)
  |     at org.jboss.wsf.container.jboss42.DefaultInvocationHandlerJAXRPC.invoke(DefaultInvocationHandlerJAXRPC.java:57)
  |     at org.jboss.ws.core.server.ServiceEndpointInvoker.invoke(ServiceEndpointInvoker.java:220)
  |     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.processRequest(RequestHandlerImpl.java:408)
  |     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:272)
  |     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.doPost(RequestHandlerImpl.java:189)
  |     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:122)
  |     at org.jboss.wsf.stack.jbws.EndpointServlet.service(EndpointServlet.java:84)
  |     at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
  |     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
  |     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  |     at org.jboss.portal.wsrp.servlet.TransactionFilter.doFilter(TransactionFilter.java:78)
  |     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
  |     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  |     at org.jboss.portal.wsrp.servlet.ServletAccessFilter.doFilter(ServletAccessFilter.java:54)
  |     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
  |     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  |     at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
  |     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
  |     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  |     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
  |     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
  |     at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
  |     at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
  |     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
  |     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
  |     at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
  |     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
  |     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
  |     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
  |     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
  |     at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
  |     at java.lang.Thread.run(Thread.java:613)
  | Caused by: org.jboss.portal.common.util.FormatConversionException: en_US is not a valid compound language : accepted format is xx-YY where xx is a valid ISO language code and YY is a valid country code. See java.util.Locale javadoc for more info.
  |     at org.jboss.portal.common.i18n.RFC3066LanguageTagLocaleFormat.internalGetLocale(RFC3066LanguageTagLocaleFormat.java:74)
  |     at org.jboss.portal.common.i18n.AbstractLocaleFormat.getLocale(AbstractLocaleFormat.java:47)
  |     at org.jboss.portal.common.i18n.CachingLocaleFormat.getLocale(CachingLocaleFormat.java:74)
  |     at org.jboss.portal.wsrp.WSRPUtils.getLocale(WSRPUtils.java:429)
  |     ... 59 more

Here's the SOAP message:

  | <SOAP-ENV:Envelope xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/' xmlns:tns='urn:oasis:names:tc:wsrp:v1:wsdl' xmlns:wn0='http://schemas.xmlsoap.org/soap/encoding/' xmlns:wn1='http://www.w3.org/2001/XMLSchema' xmlns:wn2='http://www.w3.org/2000/10/XMLSchema' xmlns:wn3='http://www.w3.org/1999/XMLSchema' xmlns:wn4='urn:oasis:names:tc:wsrp:v1:wsdl' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
  |  <SOAP-ENV:Body>
  |   <prt0:getMarkup xmlns:prt0='urn:oasis:names:tc:wsrp:v1:types'>
  |    <prt0:registrationContext>
  |     <prt0:registrationHandle xmlns:prt0='urn:oasis:names:tc:wsrp:v1:types'>2</prt0:registrationHandle>
  |    </prt0:registrationContext>
  |    <prt0:portletContext>
  |     <prt0:portletHandle xmlns:prt0='urn:oasis:names:tc:wsrp:v1:types'>/nomination_poc.nomination_poc_create</prt0:portletHandle>
  |    </prt0:portletContext>
  |    <prt0:runtimeContext>
  |     <prt0:userAuthentication xmlns:prt0='urn:oasis:names:tc:wsrp:v1:types'>wsrp:certificate</prt0:userAuthentication>
  |     <prt0:portletInstanceKey xmlns:prt0='urn:oasis:names:tc:wsrp:v1:types'>pcd:portal_content/p42_poc/nomination_poc.nomination_poc_create.1</prt0:portletInstanceKey>
  |    </prt0:runtimeContext>
  |    <prt0:userContext>
  |     <prt0:userContextKey xmlns:prt0='urn:oasis:names:tc:wsrp:v1:types'>USER.CORP_LDAP.oc60872</prt0:userContextKey>
  |    </prt0:userContext>
  |    <prt0:markupParams>
  |     <prt0:secureClientCommunication xmlns:prt0='urn:oasis:names:tc:wsrp:v1:types'>false</prt0:secureClientCommunication>
  |     <prt0:locales xmlns:prt0='urn:oasis:names:tc:wsrp:v1:types'>en_US</prt0:locales>
  |     <prt0:locales xmlns:prt0='urn:oasis:names:tc:wsrp:v1:types'>en-US</prt0:locales>
  |     <prt0:mimeTypes xmlns:prt0='urn:oasis:names:tc:wsrp:v1:types'>text/html</prt0:mimeTypes>
  |     <prt0:mode xmlns:prt0='urn:oasis:names:tc:wsrp:v1:types'>wsrp:view</prt0:mode>
  |     <prt0:windowState xmlns:prt0='urn:oasis:names:tc:wsrp:v1:types'>wsrp:normal</prt0:windowState>
  |     <prt0:clientData xmlns:prt0='urn:oasis:names:tc:wsrp:v1:types'>
  |      <prt0:userAgent xmlns:prt0='urn:oasis:names:tc:wsrp:v1:types'>Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; InfoPath.2)</prt0:userAgent>
  |     </prt0:clientData>
  |     <prt0:markupCharacterSets xmlns:prt0='urn:oasis:names:tc:wsrp:v1:types'>UTF-8</prt0:markupCharacterSets>
  |    </prt0:markupParams>
  |   </prt0:getMarkup>
  |  </SOAP-ENV:Body>
  | </SOAP-ENV:Envelope>

I've checked the spec and XSD for the WSDL, everything looks like it's good and in compliance, but JBoss is dying on the en_US, but doesn't seem to pickup the en-US string.  Which one is in the wrong here?  Is the the consumer (SAP) or the producer (JBoss)?

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4157696#4157696

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4157696



More information about the jboss-user mailing list