[JBoss JIRA] Created: (JBRULES-759) CLONE -Unable to add package after it was added and removed
by Brugger Antony (JIRA)
CLONE -Unable to add package after it was added and removed
-----------------------------------------------------------
Key: JBRULES-759
URL: http://jira.jboss.com/jira/browse/JBRULES-759
Project: JBoss Rules
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Reteoo
Affects Versions: 3.0.4
Environment: Windows2000 Advanced Server
JBRules3.0.4
Reporter: Brugger Antony
Assigned To: Edson Tirelli
Fix For: 3.0.5
Unable remove a rule package when it was added after it has been added and removed.
I have seen the issue [#JBRULES-358]. My test go a little far than [#JBRULES-358].
I remove the package again when it was added for the seconn time, then an exception was thrown.
My test case is:
public void testRuleBaseRemove() throws Exception
{
RuleBase ruleBase = RuleBaseFactory.newRuleBase();
File file = new File("test.drl");
//add and remove
PackageBuilder builder = new PackageBuilder();
builder.addPackageFromDrl(new FileReader(file));
Package pkg = builder.getPackage();
ruleBase.addPackage(pkg);
ruleBase.removePackage(pkg.getName());
//add and remove again
builder = new PackageBuilder();
builder.addPackageFromDrl(new FileReader(file));
pkg = builder.getPackage();
ruleBase.addPackage(pkg);
ruleBase.removePackage(pkg.getName());
}
the exception is throw:
java.lang.NullPointerException
at org.drools.reteoo.HashedObjectSinkList.remove(HashedObjectSinkList.java:102)
at org.drools.reteoo.ObjectTypeNode.remove(ObjectTypeNode.java:245)
at org.drools.reteoo.AlphaNode.remove(AlphaNode.java:211)
at org.drools.reteoo.AlphaNode.remove(AlphaNode.java:211)
at org.drools.reteoo.LeftInputAdapterNode.remove(LeftInputAdapterNode.java:285)
at org.drools.reteoo.TerminalNode.remove(TerminalNode.java:297)
at org.drools.reteoo.ReteooBuilder.removeRule(ReteooBuilder.java:589)
at org.drools.reteoo.ReteooRuleBase.removeRule(ReteooRuleBase.java:244)
at org.drools.common.AbstractRuleBase.removePackage(AbstractRuleBase.java:338)
at com.zte.ums.uep.pal.fm.osf.rules.core.RuleBaseTest.testRuleBaseRemove(RuleBaseTest.java:71)
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:324)
at junit.framework.TestCase.runTest(TestCase.java:154)
at junit.framework.TestCase.runBare(TestCase.java:127)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:128)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
--
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
15 years, 6 months
[JBoss JIRA] Created: (JBMESSAGING-1436) MessageRedeliverer for DLQ
by Chris Au (JIRA)
MessageRedeliverer for DLQ
--------------------------
Key: JBMESSAGING-1436
URL: https://jira.jboss.org/jira/browse/JBMESSAGING-1436
Project: JBoss Messaging
Issue Type: Feature Request
Environment: JBossESB-server-4.4.GA
WindowsXP
Reporter: Chris Au
Assignee: Tim Fox
I have seen the source code of MessageRedeliverer, which defaults to be resending message for RDLVR classification. But I see there shouldn't be difficult to modify so that it could support redelivery of message for DLQ. (We may want to try the DLQ once per day or even once a week automatically so as to cleanup accumulated DLQ messages).
I also noticed that the DBMessageStoreImpl.resend function only supports for RDLVR classification because of the checking that
delete(uuid, RedeliverStore.CLASSIFICATION_RDLVR, con)==1
So even if I manually invoke the internal redeliverer service with a message having header property :
org.jboss.soa.esb.messagestore.classification = DLQ
the redelivery will not success.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
15 years, 6 months
[JBoss JIRA] Created: (JBMESSAGING-1435) Connection drop cannot recover JMSSession
by Chris Au (JIRA)
Connection drop cannot recover JMSSession
-----------------------------------------
Key: JBMESSAGING-1435
URL: https://jira.jboss.org/jira/browse/JBMESSAGING-1435
Project: JBoss Messaging
Issue Type: Feature Request
Environment: jbossesb-server-4.4.GA
Windows XP
Reporter: Chris Au
Assignee: Tim Fox
I used JMSRouter to route message to a SonicMQ, it works fine. But I just tried to figure out the exception handling method and tried to manually drop the connection from ESB Client to SonicMQ. But after I dropped the connection, exception raised as follows :
javax.jms.IllegalStateException: The session is closed.
at progress.message.jimpl.Session.getJMSObjectClosedException(Unknown Source)
at progress.message.jimpl.Session.createTextMessage(Unknown Source)
at org.jboss.internal.soa.esb.rosetta.pooling.JmsSession.createTextMessage(JmsSession.java:210)
at org.jboss.soa.esb.actions.routing.JMSRouter.createJMSMessageWithObjectType(JMSRouter.java:262)
at org.jboss.soa.esb.actions.routing.JMSRouter.route(JMSRouter.java:232)
at org.jboss.soa.esb.actions.routing.JMSRouter.process(JMSRouter.java:211)
at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.process(ActionProcessingPipeline.java:316)
at org.jboss.soa.esb.listeners.message.MessageAwareListener$TransactionalRunner.run(MessageAwareListener.java:530)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
at java.lang.Thread.run(Thread.java:595)
Is it an expected behavior that it will not do auto-retry? As I could not find any "isSessionClosed()" kind method to check if the session is closed.
On the other hand, I also listens to SonicMQ, the connection will automatically recover once I manually drop the connection session. Could the similar be implemented in JmsSender ?
Another issue is......is it possible to provide any clue for the cause of the exception :
ERROR [org.jboss.jms.client.container.ClosedInterceptor] ClosedInterceptor.ClientSessionDelegate[ya-ie6ih2nf-1-9wwug2nf-klr89h-m4u4js4]: method getAcknowledgeMode() did not go through, the interceptor is CLOSED ?
Thanks a lot.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
15 years, 6 months