[aspectwerkz-user] Integarting ASPECTWERKZ 2.0 Offline weaving with Weblogic Portal Application
Raman Mishra <[email protected]> Wed, 1 Jun 2005 06:55:41 -0700
| Newsgroups | gmane.comp.java.aspectwerkz.user |
|---|---|
| Message-ID | <[email protected]> |
Hi , We are trying to use aspectwerkz(offline mode) in our weblogic portal application. We are using aspect for each web and ejb modules. But when we tried to access any page it's giving following exception java.lang.IllegalAccessError: tried to access method java.lang.Object.clone()Ljava/lang/Object; from class org.codehaus.aspectwerkz.expression.ArgsIndexVisitor at org.codehaus.aspectwerkz.expression.ArgsIndexVisitor.visit ( ArgsIndexVisitor.java:93) at org.codehaus.aspectwerkz.expression.ast.ASTPointcutReference.jjtAccept( ASTPointcutReference.java:33) at org.codehaus.aspectwerkz.expression.ExpressionVisitor.visit( ExpressionVisitor.java :133) at org.codehaus.aspectwerkz.expression.ast.ASTExpression.jjtAccept( ASTExpression.java:18) at org.codehaus.aspectwerkz.expression.ExpressionVisitor.visit( ExpressionVisitor.java:121) at org.codehaus.aspectwerkz.expression.ExpressionVisitor.match ( ExpressionVisitor.java:107) at org.codehaus.aspectwerkz.expression.ArgsIndexVisitor.updateContextForRuntimeInformation (ArgsIndexVisitor.java:62) at org.codehaus.aspectwerkz.joinpoint.management.JoinPointManager.getAdviceInfoContainerForJoinPoint( JoinPointManager.java:304) at org.codehaus.aspectwerkz.joinpoint.management.JoinPointManager.compileJoinPoint (JoinPointManager.java:230) at org.codehaus.aspectwerkz.joinpoint.management.JoinPointManager.loadJoinPoint( JoinPointManager.java:118) at db.DbController.aw$initJoinPoints(DbController.jpf) at db.DbController.<clinit>(DbController.jpf) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName( Class.java:140) at com.bea.wlw.netui.pageflow.PageFlowRequestProcessor.processActionCreate( PageFlowRequestProcessor.java:132) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java :268) at com.bea.wlw.netui.pageflow .PageFlowRequestProcessor.process( PageFlowRequestProcessor.java:651) at com.bea.wlw.netui.pageflow.AutoRegisterActionServlet.process( AutoRegisterActionServlet.java:527) at com.bea.wlw.netui.pageflow.PageFlowActionServlet.process ( PageFlowActionServlet.java:152) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507) at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) at javax.servlet.http.HttpServlet.service (HttpServlet.java:853) at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run( ServletStubImpl.java:971) at weblogic.servlet.internal.ServletStubImpl.invokeServlet( ServletStubImpl.java:402) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java :27) at com.bea.p13n.servlets.PortalServletFilter.doFilter( PortalServletFilter.java :313) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java :27) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run( WebAppServletContext.java:6356) at weblogic.security.acl.internal.AuthenticatedSubject.doAs ( AuthenticatedSubject.java:317) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118) at weblogic.servlet.internal.WebAppServletContext.invokeServlet( WebAppServletContext.java:3635) at weblogic.servlet.internal.ServletRequestImpl.execute ( ServletRequestImpl.java:2585) at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197) at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170) > My aop.xml is <!DOCTYPE aspectwerkz PUBLIC "-//AspectWerkz//DTD//EN" "http://aspectwerkz.codehaus.org/dtd/aspectwerkz.dtd "> <aspectwerkz> <system id="farmework"> <pointcut name="loggingRelated" expression="within(aop.*) OR within(example.*) OR execution(* db..*.getLog()) OR execution(* ejb..*.getLog()) OR within(common..*) "/> <pointcut name="avoidTrace" expression="!loggingRelated"/> <!-- Profiling for ejb,web modules--> <aspect class="aop.ProfilingIdiom"> <pointcut name="p3" expression="(execution(* db*..*.*(..)) OR execution(* ejb..*Bean.*(..)) )AND avoidTrace" /> <advice name="profile(StaticJoinPoint jp)" type="around" bind-to="p3"/> </aspect> <!-- Logging for web modules--> <aspect class=" aop.LoggingIdiom"> <pointcut name="p2" expression="execution(* db..*.*(..)) AND avoidTrace" /> <advice name="traceWithParams(JoinPoint jp, aop.Loggable loggable)" type="around" bind-to="p2 AND target(loggable)" /> </aspect> <!-- Logging for ejb modules--> <aspect class="example.logging.LoggingAspect" deployment-model="perJvm"> <pointcut name="allMethods" expression="execution(* ejb..*Bean.*(..))"/> <advice name="log" type="around" bind-to="allMethods" /> </aspect> <!--Loggable implementation for web module, it will implement Loggable interface--> <mixin class="aop.LoggableImpl" deployment-model="perClass" bind-to="within(db..*) OR within(controls..*) AND !within(aop.*)"/> </system> </aspectwerkz> what could be the possible reason for this ? The following jar files in our APP-INF/lib folder aspectwerkz-2.0.jar aspectwerkz-core-2.0.jar aspectwerkz-extensions-2.0.jar aspectwerkz-jdk14-2.0.jar qdox-1.4.jar concurrent-1.3.1.jar trove-1.0.2.jar jrexx-1.1.1.jar and also we tried with the following jars aspectwerkz-2.0.jar aspectwerkz-core-2.0.jar aspectwerkz-extensions-2.0.jar aspectwerkz-nodeps-jdk14-2.0.jar but in both ways giving same exception. But if we put all the jars in the weblogic server startup classpath then it's working. I checked the list of jars on http://aspectwerkz.codehaus.org/faq.html#other_nodeps , but it's not working. what all jars we need to put in APP-INF/lib folder or WEB-INF/lib folder? Thanks Raman