Hi Uli, The VM argument doesn't help. I use tapestry 5.1.0.5 .
I tried to reproduce the bug in a empty app without luck. It's hard, because I don't know were I am looking for. In my main app I can still reproduce it and I also noticed that the exception is dependent by the method parameter type. If I use "void getData(MyObject...o)" the exception occurs and if I change MyObject to Integer or String it doesn't occur. Every hint in which direction to search is welcome. Joris java.lang.LinkageError: loader constraint violation: when resolving interface method "de.ida.kv.services.VarargsTestService.bla([Lde/ida/kv/base/hibernate/MyObject;)V" the class loader (instance of org/apache/tapestry5/internal/services/ComponentInstantiatorSourceImpl$PackageAwareLoader) of the current class, de/ida/kv/pages/Login, and the class loader (instance of org/mortbay/jetty/webapp/WebAppClassLoader) for resolved class, de/ida/kv/services/VarargsTestService, have different Class objects for the type [Lde/ida/kv/base/hibernate/MyObject; used in the signature at de.ida.kv.pages.Login.beginRender(Login.java:32) at de.ida.kv.pages.Login.beginRender(Login.java) at org.apache.tapestry5.internal.structure.ComponentPageElementImpl $BeginRenderPhase.invokeComponent(ComponentPageElementImpl.java:206) at org.apache.tapestry5.internal.structure.ComponentPageElementImpl $AbstractPhase.run(ComponentPageElementImpl.java:164) at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.invoke(ComponentPageElementImpl.java:933) at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.access $400(ComponentPageElementImpl.java:49) at org.apache.tapestry5.internal.structure.ComponentPageElementImpl $AbstractPhase.callback(ComponentPageElementImpl.java:159) at org.apache.tapestry5.internal.structure.ComponentPageElementImpl $BeginRenderPhase.render(ComponentPageElementImpl.java:211) at org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:74) at org.apache.tapestry5.internal.services.PageRenderQueueImpl.render(PageRenderQueueImpl.java:121) at $PageRenderQueue_12a1973bcae.render($PageRenderQueue_12a1973bcae.java) at $PageRenderQueue_12a1973bca5.render($PageRenderQueue_12a1973bca5.java) at org.apache.tapestry5.internal.services.MarkupRendererTerminator.renderMarkup(MarkupRendererTerminator.java:37) at org.apache.tapestry5.services.TapestryModule $27.renderMarkup(TapestryModule.java:1748) at $MarkupRenderer_12a1973bcb0.renderMarkup($MarkupRenderer_12a1973bcb0.java) at org.apache.tapestry5.services.TapestryModule $26.renderMarkup(TapestryModule.java:1732) at $MarkupRenderer_12a1973bcb0.renderMarkup($MarkupRenderer_12a1973bcb0.java) at org.apache.tapestry5.services.TapestryModule $25.renderMarkup(TapestryModule.java:1714) at $MarkupRenderer_12a1973bcb0.renderMarkup($MarkupRenderer_12a1973bcb0.java) at org.apache.tapestry5.services.TapestryModule $24.renderMarkup(TapestryModule.java:1700) at $MarkupRenderer_12a1973bcb0.renderMarkup($MarkupRenderer_12a1973bcb0.java) at org.apache.tapestry5.services.TapestryModule $23.renderMarkup(TapestryModule.java:1681) at $MarkupRenderer_12a1973bcb0.renderMarkup($MarkupRenderer_12a1973bcb0.java) at org.apache.tapestry5.services.TapestryModule $22.renderMarkup(TapestryModule.java:1662) at $MarkupRenderer_12a1973bcb0.renderMarkup($MarkupRenderer_12a1973bcb0.java) at $MarkupRenderer_12a1973bcad.renderMarkup($MarkupRenderer_12a1973bcad.java) at org.apache.tapestry5.internal.services.PageMarkupRendererImpl.renderPageMarkup(PageMarkupRendererImpl.java:64) at $PageMarkupRenderer_12a1973bcaa.renderPageMarkup($PageMarkupRenderer_12a1973bcaa.java) at org.apache.tapestry5.internal.services.PageResponseRendererImpl.renderPageResponse(PageResponseRendererImpl.java:61) at $PageResponseRenderer_12a1973bc49.renderPageResponse($PageResponseRenderer_12a1973bc49.java) at org.tynamo.security.ShiroExceptionHandler.handle(ShiroExceptionHandler.java:107) at org.tynamo.security.services.SecurityModule $3.advise(SecurityModule.java:249) at org.apache.tapestry5.ioc.internal.services.AbstractInvocation.proceed(AbstractInvocation.java:121) at $RequestExceptionHandler_12a1973bc4b.handleRequestException($RequestExceptionHandler_12a1973bc4b.java) at $RequestExceptionHandler_12a1973bc2f.handleRequestException($RequestExceptionHandler_12a1973bc2f.java) at org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:42) at $RequestHandler_12a1973bc31.service($RequestHandler_12a1973bc31.java) at org.apache.tapestry5.services.TapestryModule $4.service(TapestryModule.java:778) at $RequestHandler_12a1973bc31.service($RequestHandler_12a1973bc31.java) at org.apache.tapestry5.services.TapestryModule $3.service(TapestryModule.java:767) at $RequestHandler_12a1973bc31.service($RequestHandler_12a1973bc31.java) at org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:85) at $RequestHandler_12a1973bc31.service($RequestHandler_12a1973bc31.java) at de.ida.kv.services.AppModule$1.service(AppModule.java:162) at $RequestFilter_12a1973bc2d.service($RequestFilter_12a1973bc2d.java) at $RequestHandler_12a1973bc31.service($RequestHandler_12a1973bc31.java) at org.apache.tapestry5.internal.services.CheckForUpdatesFilter $2.invoke(CheckForUpdatesFilter.java:90) at org.apache.tapestry5.internal.services.CheckForUpdatesFilter $2.invoke(CheckForUpdatesFilter.java:81) at org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85) at org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103) at $RequestHandler_12a1973bc31.service($RequestHandler_12a1973bc31.java) at $RequestHandler_12a1973bc25.service($RequestHandler_12a1973bc25.java) at org.apache.tapestry5.services.TapestryModule $HttpServletRequestHandlerTerminator.service(TapestryModule.java:197) at org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53) at $HttpServletRequestHandler_12a1973bc27.service($HttpServletRequestHandler_12a1973bc27.java) at org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62) at $HttpServletRequestFilter_12a1973bc23.service($HttpServletRequestFilter_12a1973bc23.java) at $HttpServletRequestHandler_12a1973bc27.service($HttpServletRequestHandler_12a1973bc27.java) at org.tynamo.security.filter.SecurityRequestFilter $2.doFilter(SecurityRequestFilter.java:167) at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:359) at org.apache.shiro.web.servlet.AbstractShiroFilter $1.call(AbstractShiroFilter.java:275) at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90) at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83) at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:343) at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:272) at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:83) at org.tynamo.security.filter.SecurityRequestFilter.service(SecurityRequestFilter.java:162) at $HttpServletRequestFilter_12a1973bc24.service($HttpServletRequestFilter_12a1973bc24.java) at $HttpServletRequestHandler_12a1973bc27.service($HttpServletRequestHandler_12a1973bc27.java) at org.apache.tapestry5.services.TapestryModule $2.service(TapestryModule.java:726) at $HttpServletRequestHandler_12a1973bc27.service($HttpServletRequestHandler_12a1973bc27.java) at $HttpServletRequestHandler_12a1973bc21.service($HttpServletRequestHandler_12a1973bc21.java) at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:127) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405) at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206) at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:324) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505) at org.mortbay.jetty.HttpConnection $RequestHandler.headerComplete(HttpConnection.java:828) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395) at org.mortbay.thread.BoundedThreadPool $PoolThread.run(BoundedThreadPool.java:450) Am Mittwoch, den 28.07.2010, 10:49 +0200 schrieb Ulrich Stärk: > I don't think so, I can't reproduce it in 5.2.0-SNAPSHOT with a simple > service concatenating a > variable list of string arguments. When running Jetty please try to give the > -Dorg.mortbay.jetty.webapp.parentLoaderPriority=true VM argument. It would > also be helpful to know > which version of Tapestry you are using. > > Uli > > On 27.07.2010 17:58, Howard Lewis Ship wrote: > > Interesting; probably a bug, possibly in Javassist. > > > > On Tue, Jul 27, 2010 at 8:44 AM, joris<jogo...@web.de> wrote: > >> Hi, > >> > >> if I implement a method with varargs in a tapestry service and try then > >> to call it without parameters, I get the following exception: > >> > >> java.lang.LinkageError: loader constraint violation: when resolving > >> interface method "..." the class loader (instance of > >> org/apache/tapestry5/internal/services/ComponentInstantiatorSourceImpl > >> $PackageAwareLoader) of the current class, ..., and the class loader > >> (instance of org/mortbay/jetty/webapp/WebAppClassLoader) for resolved > >> class, ..., have different Class objects for the type ... used in the > >> signature > >> > >> Example: > >> > >> public interface MyService{ > >> Data getData(Permission...permissions); > >> } > >> > >> public class MyPage{ > >> > >> @Inject > >> private MyService service; > >> > >> void onActivate(){ > >> service.getData(); > >> } > >> } > >> > >> It looks like the loader does not handle this special case. > >> Is this a bug or is there a reason why it behaves like that? > >> > >> Joris > >> > >> > >> --------------------------------------------------------------------- > >> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org > >> For additional commands, e-mail: users-h...@tapestry.apache.org > >> > >> > > > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org > For additional commands, e-mail: users-h...@tapestry.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org