do you have operation info for the operation names you are mapping to
(setId & getId)?
On Tue, 1 Oct 2002, Matt Munz wrote:
> Juha & Group,
>
> > make sure you add the getMethod and setMethod mapping to your MMB
> > attributes.
>
> Thanks. I did this and started re-reading your JMX book. I now have a new
> error :)
>
> Below, I include my MBean Info generation code, and some error output. When
> I try to view the jmx-console page for my new MBean, the servlet tries to
> get all of the bean's attributes. The attribute "getId" is requested, but
> this information is stored by the name "Id". I assume that there is
> something wrong with my MBean info, but I can't figure out what it is.
> Error & debug output are listed below. Any help would be appreciated.
>
> - Matt
>
> ### metadata generation
>
> public ModelMBeanInfo getModelMBeanInfo()
> {
> final boolean READABLE = true;
> final boolean WRITABLE = true;
> final boolean BOOLEAN = true;
> // build 'Id' read-write attribute
> Descriptor descr1 = new DescriptorSupport();
> descr1.setField("name", "Id");
> descr1.setField("descriptorType", "attribute");
> descr1.setField("displayName", "Identification");
> descr1.setField("setMethod", "setId");
> descr1.setField("getMethod", "getId");
> ModelMBeanAttributeInfo idAttrInfo;
> idAttrInfo = new ModelMBeanAttributeInfo("Id",
> String.class.getName(),
> "Identification.",
> READABLE,
> WRITABLE,
> !BOOLEAN,
> descr1);
> // MBean descriptor
> Descriptor descr4 = new DescriptorSupport();
> descr4.setField("name", "Widget");
> descr4.setField("descriptorType", "mbean"); // was MBean
> // create ModelMBeanInfo
> ModelMBeanAttributeInfo[] attrInfo = new ModelMBeanAttributeInfo[] {
> idAttrInfo };
> ModelMBeanOperationInfo[] operationInfo = new ModelMBeanOperationInfo[]
> {};
> ModelMBeanInfo info = new
> ModelMBeanInfoSupport(RequiredModelMBean.class.getName(),
> "Widget",
> attrInfo,
> null,
> operationInfo,
> null,
> descr4);
> return info;
> }
>
> ### AttributeOperationREsolver constructor
>
> 11:33:33,020 INFO [STDOUT] !!!m attributes[0]:
> ModelMBeanAttributeInfo[Name=Id,Type=java.lang.String,Access=RW,Descript
> or(setMethod=setId,descriptorType=attribute,name=Id,displayName=Identificati
> on,getMethod=getId)]
>
> ### AttributeOperationREsolver.store()
>
> 11:33:33,020 INFO [STDOUT] !!!m storing attrName: Id and code: 0
>
> ### AttributeOperationREsolver.lookup()
>
> 11:34:06,141 INFO [STDOUT] !!!m looking up actionName: getId and signature:
> [Ljava.lang.String;@1c87031
>
> ### error
>
> java.lang.NoSuchMethodException: Unable to locate method for: getId()
> at
> org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispat
> cher.java:300)
> at
> org.jboss.mx.interceptor.ObjectReferenceInterceptor.invoke(ObjectReferenceIn
> terceptor.java:66)
> at
> org.jboss.mx.interceptor.MBeanAttributeInterceptor.invoke(MBeanAttributeInte
> rceptor.java:54)
> at
> org.jboss.mx.interceptor.PersistenceInterceptor.invoke(PersistenceIntercepto
> r.java:91)
> at org.jboss.mx.server.MBeanInvoker.invoke(MBeanInvoker.java:79)
> at
> org.jboss.mx.interceptor.MBeanAttributeInterceptor.invoke(MBeanAttributeInte
> rceptor.java:129)
> at
> org.jboss.mx.interceptor.PersistenceInterceptor.invoke(PersistenceIntercepto
> r.java:99)
> at
> org.jboss.mx.server.MBeanInvoker.getAttribute(MBeanInvoker.java:110)
> at
> javax.management.modelmbean.RequiredModelMBean.getAttribute(RequiredModelMBe
> an.java:147)
> at
> org.jboss.mx.server.MBeanServerImpl.getAttribute(MBeanServerImpl.java:455)
> at
> org.jboss.jmx.adaptor.control.Server.getMBeanAttributeResultInfo(Server.java
> :125)
> at
> org.apache.jsp.inspectMBean_jsp._jspService(inspectMBean_jsp.java:179)
> at
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:136)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:2
> 02)
> at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:289)
> at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:240)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:362)
> at
> org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandl
> er.java:284)
> at
> org.mortbay.jetty.servlet.Dispatcher.dispatch(Dispatcher.java:216)
> at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:151)
> at
> org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.inspectMBean(HtmlAdaptorServle
> t.java:113)
> at
> org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.processRequest(HtmlAdaptorServ
> let.java:73)
> at
> org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.doGet(HtmlAdaptorServlet.java:
> 54)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:362)
> at
> org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandl
> er.java:284)
> at
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:565)
> at org.mortbay.http.HttpContext.handle(HttpContext.java:1664)
> at
> org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext
> .java:544)
> at org.mortbay.http.HttpContext.handle(HttpContext.java:1614)
> at org.mortbay.http.HttpServer.service(HttpServer.java:875)
> at org.jboss.jetty.Jetty.service(Jetty.java:531)
> at org.mortbay.http.HttpConnection.service(HttpConnection.java:785)
> at
> org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:935)
> at org.mortbay.http.HttpConnection.handle(HttpConnection.java:802)
> at
> org.mortbay.http.SocketListener.handleConnection(SocketListener.java:200)
> at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:294)
> at org.mortbay.util.ThreadPool$JobRunner.run(ThreadPool.java:743)
> at java.lang.Thread.run(Thread.java:536)
>
>
>
>
>
>
> -------------------------------------------------------
> This sf.net email is sponsored by: DEDICATED SERVERS only $89!
> Linux or FreeBSD, FREE setup, FAST network. Get your own server
> today at http://www.ServePath.com/indexfm.htm
> _______________________________________________
> Jboss-development mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/jboss-development
>
--
Juha Lindfors
Author of "JMX: Managing J2EE with Java Management Extensions"
-------------------------------------------------------
This sf.net email is sponsored by: DEDICATED SERVERS only $89!
Linux or FreeBSD, FREE setup, FAST network. Get your own server
today at http://www.ServePath.com/indexfm.htm
_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development