[JBoss JIRA] Created: (JBAS-3839) Wrong target after redeploy
by Michael Kraue (JIRA)
Wrong target after redeploy
---------------------------
Key: JBAS-3839
URL: http://jira.jboss.com/jira/browse/JBAS-3839
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Deployment services
Affects Versions: JBossAS-4.0.5.GA, JBossAS-4.0.4.GA
Environment: Operating System: Ubuntu 6.06 LTS
JDK Version: jdk1.5.0_09
ANT Build tool: Apache Ant version 1.6.2 compiled on July 16 2004
Reporter: Michael Kraue
Assigned To: Dimitris Andreadis
Description:
Starting with Jboss 4.0.4 GA I get "Wrong Target" exception on any remote bean invokation after a redeploy. Only thing that helps is restaring JBoss.
How to repeat the bug:
-installing JBoss
*install a fresh JBOSS via http://jboss.sourceforge.net/jnlp/jems-installer-1.2.0.BETA3.jnlp
*choose: ejb3-clustered
*rest of installation process, provided defaults were used
*in $JBOSS_HOME/server/default/conf/standardjboss.xml: disable ipv6 support with an option for JVM:
-Djava.net.preferIPv4Stack=true
reason: IP6 does not work on ubuntu linux (see: http://wiki.jboss.org/wiki/Wiki.jsp?page=IPv6)
-building an example application
*example uses JBoss' internal database
*I used the Oreilly Workbook for Enterpreise Beans3.0 http://prdownloads.sourceforge.net/jboss/oreilly-ejb3-workbook_for_jboss4...
*unzip workbook to $WORKBOOK
*change to directory $WORKBOOK/ex04_1
*set JAVA_HOME, and JBOSS_HOME to required pathes
*build and deploy example with: ant
*run client with: ant run.client
=>everything is working
*touch the deployed jar with: touch $JBOSS_HOME/server/default/deploy/titan.jar
*application is redeployed
*run client with: ant run.client
=>the following error message is shown:
[java] Exception in thread "main" javax.ejb.EJBException: java.lang.IllegalArgumentException: Wrong target. class com.titan.travelagent.TravelAgentBean for public int com.titan.travelagent.TravelAgentBean.createCustomer(com.titan.domain.Customer)
[java] at org.jboss.ejb3.tx.Ejb3TxPolicy.handleExceptionInOurTx(Ejb3TxPolicy.java:69)
[java] at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:83) [java] at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:197)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
[java] at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:131)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:47)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.ejb3.stateless.StatelessContainer.dynamicInvoke(StatelessContainer.java:263)
[java] at org.jboss.aop.Dispatcher.invoke(Dispatcher.java:106)
[java] at org.jboss.aspects.remoting.AOPRemotingInvocationHandler.invoke(AOPRemotingInvocationHandler.java:82)
[java] at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:828)
[java] at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:681)
[java] at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:358)
[java] at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:398)
[java] at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:239)
[java] Caused by: java.lang.IllegalArgumentException: Wrong target. class com.titan.travelagent.TravelAgentBean for public int com.titan.travelagent.TravelAgentBean.createCustomer(com.titan.domain.Customer)
[java] at org.jboss.aop.joinpoint.MethodInvocation.handleErrors(MethodInvocation.java:141)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:116)
[java] at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
[java] at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79) [java] at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:197)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
[java] at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:131)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:47)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.ejb3.stateless.StatelessContainer.dynamicInvoke(StatelessContainer.java:263)
[java] at org.jboss.aop.Dispatcher.invoke(Dispatcher.java:106)
[java] at org.jboss.aspects.remoting.AOPRemotingInvocationHandler.invoke(AOPRemotingInvocationHandler.java:82)
[java] at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:828)
[java] at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:681)
[java] at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:358)
[java] at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:398)
[java] at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:239)
[java] at org.jboss.remoting.RemoteClientInvoker.invoke(RemoteClientInvoker.java:190)
[java] at org.jboss.remoting.Client.invoke(Client.java:525)
[java] at org.jboss.remoting.Client.invoke(Client.java:488)
[java] at org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:55)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.aspects.tx.ClientTxPropagationInterceptor.invoke(ClientTxPropagationInterceptor.java:61)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.aspects.security.SecurityClientInterceptor.invoke(SecurityClientInterceptor.java:53)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:77)
[java] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at org.jboss.ejb3.stateless.StatelessRemoteProxy.invoke(StatelessRemoteProxy.java:102)
[java] at $Proxy0.createCustomer(Unknown Source)
[java] at com.titan.clients.Client.main(Client.java:30)
[java] Java Result: 1
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
17 years, 9 months
[JBoss JIRA] Commented: (JBPM-492) add pagination to the task list
by David Lloyd (JIRA)
[ http://jira.jboss.com/jira/browse/JBPM-492?page=comments#action_12348753 ]
David Lloyd commented on JBPM-492:
----------------------------------
The current solution is that I'm just fetching the first N pages of entries (right now it's 100). The database is only hit when the search criteria change. This way, the result set is finite, but a database hit is not required for each page change (which means that moving from page 1 to page 2 back to page 1 always gives you the same result, until you apply new search criteria).
The logic behind the first N pages is that, as a user, more than 100 pages is not useful to page through. If you're looking for a task, you'll use the search criteria to narrow down the result set.
This would also allow us to add sorting, because the results can be sorted without hitting the database. The only problem is that sorting can lead to misleading results when you've fetched the maximum number of rows; therefore in this situation, the user should be warned that their result set is too large and they must narrow down their search before sorting will function properly.
As an optimization, when applying search criteria, the sort criteria could be applied to the query before fetching the results to prevent a re-sort on the client side (for many sorts, there is a possiblity that the database could use an index to optimize the sort). Of course since the server might have slightly different sort semantics than the client, the client would re-apply the sort just to be save, but it should be able to run the sort in O(n) time (sorting an already sorted set).
> add pagination to the task list
> -------------------------------
>
> Key: JBPM-492
> URL: http://jira.jboss.com/jira/browse/JBPM-492
> Project: JBoss jBPM
> Issue Type: Feature Request
> Components: Web Interface
> Reporter: Tom Baeyens
> Assigned To: David Lloyd
> Fix For: jBPM 3.2 alpha 2
>
>
> only if thise can be done easily with 2 optional parameters on the task list queries.
> regards, tom.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
17 years, 9 months
[JBoss JIRA] Resolved: (JBPM-646) org.jbpm.JbpmException: couldn't parse 'jbpm-context' into a 'org.jbpm.configuration.JbpmContextInfo'
by David Lloyd (JIRA)
[ http://jira.jboss.com/jira/browse/JBPM-646?page=all ]
David Lloyd resolved JBPM-646.
------------------------------
Fix Version/s: jBPM 3.2 alpha 2
Resolution: Cannot Reproduce Bug
I'm unable to reproduce this, and I haven't heard from the user in several weeks, so I'm marking this as resolved.
> org.jbpm.JbpmException: couldn't parse 'jbpm-context' into a 'org.jbpm.configuration.JbpmContextInfo'
> -----------------------------------------------------------------------------------------------------
>
> Key: JBPM-646
> URL: http://jira.jboss.com/jira/browse/JBPM-646
> Project: JBoss jBPM
> Issue Type: Bug
> Components: Web Interface
> Affects Versions: jBPM 3.1
> Environment: oc4j
> Reporter: my zbgs
> Assigned To: David Lloyd
> Fix For: jBPM 3.2 alpha 2
>
> Original Estimate: 4 weeks
> Remaining Estimate: 4 weeks
>
> firfox:http://localhost:8888/jbpm/
> Error:
> 500 Internal Server Error
> org.jbpm.JbpmException: couldn't parse jbpm configuration from resource 'null'
> at org.jbpm.JbpmConfiguration.getInstance(JbpmConfiguration.java:290)
> at org.jbpm.web.JbpmContextFilter.getJbpmConfiguration(JbpmContextFilter.java:103)
> at org.jbpm.web.JbpmContextFilter.doFilter(JbpmContextFilter.java:90)
> at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:17)
> at org.jbpm.webapp.filter.LogFilter.doFilter(LogFilter.java:65)
> at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:627)
> at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:376)
> at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:870)
> at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:451)
> at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:218)
> at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:119)
> at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:112)
> at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
> at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
> at java.lang.Thread.run(Thread.java:595)
> Caused by: org.jbpm.JbpmException: couldn't parse 'jbpm-context' into a 'org.jbpm.configuration.JbpmContextInfo': <?xml version = '1.0' encoding = 'UTF-8'?>
> <jbpm-context name="default.jbpm.context">
> <!--<service name="persistence" factory="org.jbpm.persistence.db.DbPersistenceServiceFactory" />-->
> <service name="persistence">
> <factory>
> <bean factory="org.jbpm.persistence.db.DbPersistenceServiceFactory">
> <field name="isTransactionEnabled"><false/></field>
> <field name="dataSourceJndiName">
> <string value="java:jdbc/JbpmDS"/>
> </field>
> </bean>
> </factory>
> </service>
>
>
> <service name="message" factory="org.jbpm.msg.db.DbMessageServiceFactory"/>
> <service name="scheduler" factory="org.jbpm.scheduler.db.DbSchedulerServiceFactory"/>
> <service name="logging" factory="org.jbpm.logging.db.DbLoggingServiceFactory"/>
> <service name="authentication" factory="org.jbpm.security.authentication.DefaultAuthenticationServiceFactory"/>
> </jbpm-context>
> at org.jbpm.configuration.ObjectFactoryParser.parse(ObjectFactoryParser.java:145)
> at org.jbpm.configuration.ObjectFactoryParser.createObjectFactory(ObjectFactoryParser.java:112)
> at org.jbpm.configuration.ObjectFactoryParser.parseInputStream(ObjectFactoryParser.java:97)
> at org.jbpm.JbpmConfiguration.parseInputStream(JbpmConfiguration.java:310)
> at org.jbpm.JbpmConfiguration.getInstance(JbpmConfiguration.java:287)
> ... 14 more
> Caused by: java.lang.reflect.InvocationTargetException
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
> at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
> at org.jbpm.configuration.ObjectFactoryParser.parse(ObjectFactoryParser.java:141)
> ... 18 more
> Caused by: org.jbpm.JbpmException: couldn't parse 'bean' into a 'org.jbpm.configuration.BeanInfo': <?xml version = '1.0' encoding = 'UTF-8'?>
> <bean factory="org.jbpm.persistence.db.DbPersistenceServiceFactory">
> <field name="isTransactionEnabled"><false/></field>
> <field name="dataSourceJndiName">
> <string value="java:jdbc/JbpmDS"/>
> </field>
> </bean>
> at org.jbpm.configuration.ObjectFactoryParser.parse(ObjectFactoryParser.java:145)
> at org.jbpm.configuration.JbpmContextInfo.<init>(JbpmContextInfo.java:87)
> ... 23 more
> Caused by: java.lang.reflect.InvocationTargetException
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
> at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
> at org.jbpm.configuration.ObjectFactoryParser.parse(ObjectFactoryParser.java:141)
> ... 24 more
> Caused by: java.lang.NullPointerException
> at org.jbpm.configuration.BeanInfo.<init>(BeanInfo.java:59)
> ... 29 more
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
17 years, 9 months
[JBoss JIRA] Created: (JBRULES-579) NPE when imports not available
by Edson Tirelli (JIRA)
NPE when imports not available
------------------------------
Key: JBRULES-579
URL: http://jira.jboss.com/jira/browse/JBRULES-579
Project: JBoss Rules
Issue Type: Bug
Security Level: Public (Everyone can see)
Affects Versions: 3.1-m1
Reporter: Edson Tirelli
Assigned To: Mark Proctor
REPORTED BY DIRK BERGSTROM:
------------------------------------------------
Trying to compile this rule, I get an NPE:
package foo;
rule "Generates NPE"
when
$count : Thing( size > 0 ) from collect( Gizmo( length == 1 ) )
then
System.out.println("boo");
end
Like so:
java.lang.NullPointerException
at org.drools.rule.Rule.addDeclarations(Rule.java:316)
at org.drools.rule.Rule.addPattern(Rule.java:304)
at org.drools.semantics.java.RuleBuilder.build(RuleBuilder.java:320)
at org.drools.semantics.java.RuleBuilder.build(RuleBuilder.java:215)
at org.drools.compiler.PackageBuilder.addRule(PackageBuilder.java:366)
at org.drools.compiler.PackageBuilder.addPackage(PackageBuilder.java:215)
at org.drools.compiler.PackageBuilder.addPackageFromDrl(PackageBuilder.java:181)
at net.juniper.dash.DroolsTest.readRule(DroolsTest.java:106)
at net.juniper.dash.DroolsTest.main(DroolsTest.java:22)
This happens when there are two undefined classes referenced in a rule, with the
second one inside a collect() statement. If I import Thing, or import Gizmo, or
have a constraint on Gizmo not in a collect(), I get a parser exception, as
expected.
This is with Trunk, revision 8110.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
17 years, 9 months
[JBoss JIRA] Created: (JASSIST-31) ProxyFactory should provide method to create "empty" proxy
by Martin Burger (JIRA)
ProxyFactory should provide method to create "empty" proxy
----------------------------------------------------------
Key: JASSIST-31
URL: http://jira.jboss.com/jira/browse/JASSIST-31
Project: Javassist
Issue Type: Feature Request
Reporter: Martin Burger
Assigned To: Shigeru Chiba
Priority: Optional
All the create(...) methods of class ProxyFactory call a "real" constructor of the proxy class. Sometimes you need an "empty" proxy - an instance that was created by calling "no" constructor.
You can obtain "empty" instances by using sun.reflect.ReflectionFactory:
Constructor constructor = ReflectionFactory.getReflectionFactory().newConstructorForSerialization(proxyFactory.createClass(), Object.class.getDeclaredConstructor(new Class[0]));
Object emptyProxy = constructor.newInstance(new Object[0]);
So, a convenience method ProxyFactory.create() that calls the code above would be nice.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
17 years, 9 months