Gwimon on GlassFish

27 views
Skip to first unread message

Gérald

unread,
Dec 18, 2011, 1:53:42 PM12/18/11
to javasimon
Hello,

I just discovered there was a webapp called Gwimon in the SVN repo: is
it working? Is it similar to Jamon one?

I managed to compile it, but when I deploy it into NetBeans I get an
error (see below). I placed core/javaee/jdbc jars in the lib
directory, is it enough?

Here is the stack trace:
com.google.gwt.user.server.rpc.UnexpectedException: Service method
'public abstract gwimon.client.SimonAggregation
gwimon.client.GwimonService.listSimons(gwimon.client.SimonFilter)'
threw an unexpected exception: java.lang.NoSuchMethodError:
org.javasimon.Manager.getSimonNames()Ljava/util/Collection;
at
com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java:
385)
at
com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:
588)
at
com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:
208)
at
com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:
248)
at
com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:
62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at
org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:
1539)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
343)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
217)
at
org.javasimon.javaee.SimonServletFilter.doFilter(SimonServletFilter.java:
125)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
256)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
217)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:
279)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:
175)
at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:
655)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
595)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98)
at
com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:
91)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
162)
at
org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:
330)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:
231)
at
com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:
174)
at
com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:
828)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:
725)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:
1019)
at
com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:
225)
at
com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:
137)
at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:
104)
at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:
90)
at
com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:
79)
at
com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:
54)
at
com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:
59)
at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
at com.sun.grizzly.util.AbstractThreadPool
$Worker.doWork(AbstractThreadPool.java:532)
at com.sun.grizzly.util.AbstractThreadPool
$Worker.run(AbstractThreadPool.java:513)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.NoSuchMethodError:
org.javasimon.Manager.getSimonNames()Ljava/util/Collection;
at gwimon.server.GwimonServlet.listSimons(GwimonServlet.java:26)
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:597)
at
com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:
569)
... 35 more

Richard Richter

unread,
Dec 18, 2011, 2:11:07 PM12/18/11
to java...@googlegroups.com
Hi

Gwimon is in early experimental stage only. I wanted something to replace raw Simon tree output that you can get using the built-in simple filter "console" feature (also not documented yet). I can confirm that it works in hosted mode (use Ant build available - after you build Simon too). I even deployed this exploded war with different application on Jetty once, but I didn't check it lately. However, you would be disappointed as it is now, so no rush.

Someone with more time and skill with GWT could make miracles with it though.

The whole Java EE support from Simon is rather uncharted territory for me - we don't have best practices for Managers, we don't have classes cleaned up yet (I work on the servlet filter now, but your help with EJB interceptor was a change after many many months, etc.), we don't know where to put Gwimon WAR (when finished) and how to make it use the right manager (if not default one available through the SimonManager). Any suggestion, or better real-life experience, is more than welcome.

Virgo


--
You received this message because you are subscribed to the Google Groups "javasimon" group.
To post to this group, send email to java...@googlegroups.com.
To unsubscribe from this group, send email to javasimon+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/javasimon?hl=en.


Gérald

unread,
Dec 18, 2011, 2:48:03 PM12/18/11
to javasimon
Hi,

Thanks for your quick answer (as usual ;-) ).

I am pretty new to GlassFish too, but knowing JBoss ClassLoaders hell
I hope it's not the same here. It may be the cause of my problem, I'll
forget Gwimon for the moment, I can't help since I don't know anything
to GWT. I am going to test the "console" mode of the servlet filter to
see.

Having used both with Jamon (except 2B), I can see 2 deployment
options:
1) Everything in the application (library, web display)
2) Shared library accessed by multiple applications, web display as
separate application (ala Gwimon)
2A) Manager (singular) accessed through global reference (ala
Log4J): simon names should include application name to avoid confusion
2B) Managers (plural) bound to JNDI registry and accessed through
JNDI lookup by applications: I wonder whether it could be possible to
write JCA connector or something like this.

Cheers,
Gérald

Andre Parodi

unread,
Jan 20, 2012, 7:24:12 AM1/20/12
to java...@googlegroups.com
Not sure how you would achieve this but I would be in favour of simplicity. As a user I would like to do the following:
1. include a new jar in pom eg javasimon-manager
2. configure a new servlet in my web.xml that points to a servlet of the javasimon-manager and configure any security I want in my web.xml to close the manager url

that's it.

One of the great things about simon is the ease of inclusion in my code and the ease of integrating with spring/j2ee or whatever framework you are using. So I would avoid using features such as JNDI.

my 2c

Richard Richter

unread,
Jan 20, 2012, 7:44:09 AM1/20/12
to java...@googlegroups.com
Hi Andre

Gwimon right now is rather freezed, Gerald is working on his console that is embeddable too (and fully mavenized). Check the trunk and console module and submodules there. I haven't tried it yet, but you can file an issue right on our project page if there is a problem.

I'm not sure what will be with Gwimon later, I still plan to make it work, but I'm not sure if it will be really usable in this year (depends... and time really flies). I target for embeddable JAR with servlet declaration in web.xml - or even integration into existing filter servlet... depends. As of now, you should rather check "console" module instead of Gwimon.

Virgo


--
You received this message because you are subscribed to the Google Groups "javasimon" group.
To view this discussion on the web visit https://groups.google.com/d/msg/javasimon/-/aqB8qwX3BKcJ.

Gérald Quintana

unread,
Jan 21, 2012, 4:54:48 AM1/21/12
to java...@googlegroups.com
Just have look here http://code.google.com/p/javasimon/wiki/WebConsole
and give your feedback.

Gérald

2012/1/20 Richard Richter <vir...@gmail.com>:

Reply all
Reply to author
Forward
0 new messages