Scheduled operation on JON Dashboard causes "A scheduled operation has an invalid name - did a plugin change its operation metadata?" to be logged

Solution Verified - Updated -

Issue

  • Old scheduled operations displayed in the Dashboard result in an error being logged:
    ERROR [org.rhq.enterprise.server.operation.OperationManagerBean] A scheduled operation has an invalid name - did a plugin change its operation metadata? : ResourceOperationScheduleComposite: operation-job-id=[rhq-resource-10002-773381133-1269559112162_=_rhq-resource-10002], operation-name=[], operation-next-fire-time=[Thu Mar 25 19:00:00 CDT 2010], resource-id=[10002], resource-name=[jonserver.host RHQ Agent], resource-type-name=[RHQ Agent]
    java.lang.NullPointerException
         at org.rhq.enterprise.server.operation.OperationManagerBean.getResourceOperationSchedule(OperationManagerBean.java:420)
         at org.rhq.enterprise.server.operation.OperationManagerBean.getResourceOperationSchedule(OperationManagerBean.java:459)
         at org.rhq.enterprise.server.operation.OperationManagerBean.findCurrentlyScheduledResourceOperations(OperationManagerBean.java:1418)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
         at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
         at org.rhq.enterprise.server.common.TransactionInterruptInterceptor.addCheckedActionToTransactionManager(TransactionInterruptInterceptor.java:77)
         at sun.reflect.GeneratedMethodAccessor103.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:118)
         ...
    
  • Selecting a scheduled operation from the Dashboard returns the following error:
    An Error Occurred:
    javax.el.ELException: /rhq/resource/operation/resourceOperationScheduleDetails.xhtml @40,74 value="#{item.operationDisplayName}": /rhq/resource/operation/resourceOperationScheduleDetails.xhtml @21,87 value="#{ResourceOperationScheduleDetailsUIBean.schedule}": Error reading 'schedule' on type org.rhq.enterprise.gui.operation.schedule.resource.ResourceOperationScheduleDetailsUIBean
    +- Stack Trace
    
    javax.faces.FacesException: javax.el.ELException: /rhq/resource/operation/resourceOperationScheduleDetails.xhtml @40,74 value="#{item.operationDisplayName}": /rhq/resource/operation/resourceOperationScheduleDetails.xhtml @21,87 value="#{ResourceOperationScheduleDetailsUIBean.schedule}": Error reading 'schedule' on type org.rhq.enterprise.gui.operation.schedule.resource.ResourceOperationScheduleDetailsUIBean
         at javax.faces.component.UIOutput.getValue(UIOutput.java:187)
         at com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getValue(HtmlBasicInputRenderer.java:201)
         at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.getCurrentValue(HtmlBasicRenderer.java:284)
         at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeEnd(HtmlBasicRenderer.java:154)
         at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:861)
         at org.ajax4jsf.renderkit.RendererBase.renderChild(RendererBase.java:286)
         at org.ajax4jsf.renderkit.RendererBase.renderChildren(RendererBase.java:262)
         at org.richfaces.renderkit.html.PanelRenderer.doEncodeChildren(PanelRenderer.java:220)
         at org.richfaces.renderkit.html.PanelRenderer.doEncodeChildren(PanelRenderer.java:215)
         at org.ajax4jsf.renderkit.RendererBase.encodeChildren(RendererBase.java:121)
         at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:837)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:930)
         at javax.faces.render.Renderer.encodeChildren(Renderer.java:148)
         at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:837)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:930)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:933)
         at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
         at org.rhq.enterprise.gui.common.framework.FaceletRedirectionViewHandler.renderView(FaceletRedirectionViewHandler.java:64)
         ...
    Caused by: javax.el.ELException: /rhq/resource/operation/resourceOperationScheduleDetails.xhtml @40,74 value="#{item.operationDisplayName}": /rhq/resource/operation/resourceOperationScheduleDetails.xhtml @21,87 value="#{ResourceOperationScheduleDetailsUIBean.schedule}": Error reading 'schedule' on type org.rhq.enterprise.gui.operation.schedule.resource.ResourceOperationScheduleDetailsUIBean
         at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:76)
         at javax.faces.component.UIOutput.getValue(UIOutput.java:184)
         ... 76 more
    Caused by: java.lang.IllegalStateException: java.lang.NullPointerException
         at org.rhq.enterprise.gui.operation.schedule.OperationScheduleDetailsUIBean.init(OperationScheduleDetailsUIBean.java:54)
         at org.rhq.enterprise.gui.operation.schedule.OperationScheduleDetailsUIBean.getSchedule(OperationScheduleDetailsUIBean.java:77)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at javax.el.BeanELResolver.getValue(BeanELResolver.java:62)
         at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
         at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:72)
         at org.jboss.el.parser.AstPropertySuffix.getValue(AstPropertySuffix.java:53)
         at org.jboss.el.parser.AstValue.getValue(AstValue.java:67)
         at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
         at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
         at org.jboss.el.parser.AstIdentifier.getValue(AstIdentifier.java:40)
         at org.jboss.el.parser.AstValue.getValue(AstValue.java:63)
         at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
         at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
         ... 77 more
    Caused by: javax.ejb.EJBException: java.lang.NullPointerException
         at org.jboss.ejb3.tx.Ejb3TxPolicy.handleExceptionInOurTx(Ejb3TxPolicy.java:63)
         at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:83)
         at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)
         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
         ...
    Caused by: java.lang.NullPointerException
         at org.rhq.enterprise.server.operation.OperationManagerBean.getResourceOperationSchedule(OperationManagerBean.java:420)
         at org.rhq.enterprise.server.operation.OperationManagerBean.getResourceOperationSchedule(OperationManagerBean.java:459)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
         at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
         at org.rhq.enterprise.server.common.TransactionInterruptInterceptor.addCheckedActionToTransactionManager(TransactionInterruptInterceptor.java:77)
         ...
    
  • The Dashboard shows old scheduled operations that do not appear in <resource> -> Operations -> Schedules
  • The following message appears in the server log every time a user selects the Dashboard view in the UI:
    A scheduled operation has an invalid name - did a plugin change its operation metadata? : ResourceOperationScheduleComposite: operation-job-id=[rhq-resource-500196-1097506319-1245118195999_=_rhq-resource-500196], operation-name=[null], operation-next-fire-time=[Mon Jun 15 21:09:55 CDT 2009], resource-id=[500196], resource-name=[myAgent.host RHQ Agent], resource-type-name=[RHQ Agent]
    java.lang.NullPointerException
    

Environment

  • JBoss Operations Network (JON) 2.3.1
  • Scheduled operations for a resource which are being displayed on the JON Dashboard (http://localhost:7080/Dashboard.do) but do not appear on the respective resource's operation schedule (<resource> -> Operations -> Schedules)

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content