Are you using sticky load balancing? You need sticky load balancing if you are using a load balancer... sounds like that is the problem if the app works with no load balancer, right? Can you see in the logs that requests for a user on one machine in the cluster have subsequent requests to a different node in the cluster and that is where it is bombing?
Thanks,
Chris
-----Original Message-----
From: Lynn Garrison [mailto:]
Sent: Monday, March 26, 2012 4:44 PM
To: Chris Hyzer
Cc: Grouper Dev
Subject: Re: [grouper-dev] error on Group membership update lite
Chris,
I don't see the problem in the non production environment. We did some more testing with our production environment. We tested each machine individually and didn't see the error. We switched on a second machine so we had two machines connected to the load balancer and the problem occurred. We tried some other lite screens and they worked fine (no error). The problem seems isolated to the Group membership update lite screen. We brought the third machine back into the cluster and the problem occurs consistently.
I haven't made very many changes to the configuration files but I did change the subject look in the lite ui to this
# this configures how subjects look in the lite UI. This is the short version of the display
# images (must be in assets/images dir) for subject source id
grouperUi.subjectImg.sourceId.0 = ldap
grouperUi.subjectImg.image.0 = user.png
# screen EL has "subject" as an object
grouperUi.subjectImg.screenEl.0 = ${subject.id}
On Mar 26, 2012, at 3:25 PM, Chris Hyzer wrote:
Did it work in other envs (non prod)? Do other lite screens (e.g. create group) work, or does no ajav work?
Thanks,
Chris
-----Original Message-----
From: [mailto:] On Behalf Of Lynn Garrison
Sent: Monday, March 26, 2012 3:24 PM
To: Grouper Dev
Subject: [grouper-dev] error on Group membership update lite
I installed the Grouper 2.1.0 on our production environment servers today. We have three production servers connected to a hardware load balancer. The grouper ui and web servers were built on one of the machines in the production and the tomcat/webapps directory was rsynced to the other thwo machines.
When I access a group with the group membership update lite interface, an error is displayed in a pop up window,
The page at https://groups.iam.psu.edu says
Error type: LoadXML
Description: Incorrect XML
with an OK button
Here is an error from the grouper_error.log that appears when the pop window displays
2012-03-26 15:07:18,138: [TP-Processor6] ERROR GrouperUiRestServlet.doGet(232) - - Problem calling reflection from URL: edu.internet2.middleware.grouper.grouperUi.serviceLogic.SimpleMembershipUpdateMenu.advancedMenuStructure
java.lang.RuntimeException: Cant find hideShow: 'simpleMembershipUpdateGroupDetails' it needs to exist on the screen or be initted,
Problem calling method advancedMenuStructure on edu.internet2.middleware.grouper.grouperUi.serviceLogic.SimpleMembershipUpdateMenu
at edu.internet2.middleware.grouper.grouperUi.beans.json.GuiHideShow.retrieveHideShow(GuiHideShow.java:72)
at edu.internet2.middleware.grouper.grouperUi.serviceLogic.SimpleMembershipUpdateMenu.advancedMenuStructure(SimpleMembershipUpdateMenu.java:144)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at edu.internet2.middleware.grouper.util.GrouperUtil.invokeMethod(GrouperUtil.java:3881)
at edu.internet2.middleware.grouper.util.GrouperUtil.callMethod(GrouperUtil.java:3832)
at edu.internet2.middleware.grouper.j2ee.GrouperUiRestServlet.doGet(GrouperUiRestServlet.java:202)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at edu.internet2.middleware.grouper.ui.GrouperUiFilter.doFilter(GrouperUiFilter.java:807)
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:219)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:563)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:776)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:705)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:898)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
at java.lang.Thread.run(Thread.java:679)
Lynn
Lynn