Recall a message from the JMS destination
We are sending messages to a queue, using IBM MQ Series for messaging and JMS as the messaging system.
Could you please let me know, if there is a way we can recall messages sent to the queue?
Thanks,
Jayashree.
Are you using session or transactions?
If yes, you can do rollback.(I hope thats what you are looking for).
If you are looking for a way to get the message from the queue without
removing it, why not write a client code for that.
Similar Messages
-
How to keep a back up of messages from the JMS queues?
Hi,
I need to keep a back up of messages which are coming in the JMS queue before they get consumed. This is for recovery purpose.
I checked file store option but it doesnt have any time stamp on messages so dont know how to trace back messges if needed from file store.
Please let me know if you guys have any idea to handle this.
Thanks in advance
BipsNo. Not with Time Machine at least.
If you tell Time Machine to backup the external then you will have it.
Or you can manually copy it to another disk for storage outside of Time Capsule/TimeMachine.
Allan -
Distinguishing between messages in the error destination
Hi,
First of all, I'm using Weblogic 8.1 SP4.
I recognize that messages are delivered to the error destination if one of two situations occur:
1) The message has reached the redelivery limit.
2) The message has expired.
In my message-driven bean that picks up messages from the error destination, I need to know the reason why a message ended up there. That is, I need to know whether it was expired or the redelivery limit was reached.
Is this possible?
Thanks in advance!
Henrik OddershedeThe JMS chapter of the book "Professional Oracle WebLogic Server" has a nice discussion of poison message handling.
In your case, I'd recommend adding code to your inbound queue processing application to detect bad format messages and automatically redirect them to a separate queue for manual intervention. This would avoid mixing up the bad format messages with your automatically handled problem messages. You could then write a specialized application that your administrator can use to process the messages.
Tom -
OSB : Alert Destination not alerting on the JMS destination Topic
Hi,
I am using OSB alert destination to alert on an SLA alert of a proxy service.
The alert destnation configuration has a JMS destination of Topic type. Syntax which i followed is jms://localhost:8011/weblogic.JmsConnectionFactory/weblogic.ReportingTopic
I am able to see the alerts on the dashboard but then i cannot get the alert on topic.
I could see the below exception in log file:
Alert Rule Name: test.
com.bea.wli.sb.transports.TransportException: [JMSClientExceptions:055091]Destination JmsModule!ReportingTopic must be a queue
at com.bea.wli.sb.transports.jms.JmsOutboundMessageContext.send(JmsOutboundMessageContext.java:570)
at com.bea.wli.sb.transports.jms.JmsTransportProvider.sendMessageAsync(JmsTransportProvider.java:681)
at sun.reflect.GeneratedMethodAccessor1206.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.bea.wli.sb.transports.Util$1.invoke(Util.java:83)
at $Proxy123.sendMessageAsync(Unknown Source)
at com.bea.wli.sb.transports.TransportManagerImpl.sendMessageWithoutService(TransportManagerImpl.java:490)
at com.bea.wli.sb.transports.TransportManagerImpl.sendMessageAsync(TransportManagerImpl.java:417)
at com.bea.wli.sb.init.FrameworkStarter$TransportServiceImpl.sendMessageAsync(FrameworkStarter.java:391)
at com.bea.alsb.alert.action.jms.JmsActionProvider.executeAction(JmsActionProvider.java:346)
at com.bea.alsb.alert.AlertDestinationHandlerImpl.sendAlertToDestination(AlertDestinationHandlerImpl.java:105)
at com.bea.alsb.alert.AlertDestinationHandlerImpl.sendAlertToDestination(AlertDestinationHandlerImpl.java:67)
at com.bea.alsb.alert.sla.SlaAlertManager.generateAlert(SlaAlertManager.java:149)
at com.bea.alsb.alert.sla.SlaAlertManager.access$100(SlaAlertManager.java:33)
at com.bea.alsb.alert.sla.SlaAlertManager$RuleListenerForAlertGeneration.onRuleTrue(SlaAlertManager.java:227)
at com.bea.alsb.rule.RuleEngine$ListenerInvocation.invokeListener(RuleEngine.java:76)
at com.bea.alsb.rule.RuleEngine$ListenerInvocation.access$000(RuleEngine.java:61)
at com.bea.alsb.rule.RuleEngine.addFact(RuleEngine.java:115)
at com.bea.alsb.alert.sla.SlaAlertManager.intervalCompleted(SlaAlertManager.java:202)
at com.bea.alsb.alert.sla.TaskCollector$RuleEvaluationTask.run(TaskCollector.java:177)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:442)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:139)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:909)
at java.lang.Thread.run(Thread.java:619)
In the alert destination i selected the destination type as topic. Is there anything i am missing. I checked the documentation it says that the jms destination in alert destination can be Queue/Topic. Please suggest. Thanks in advanceA topic wont persist the message, unlike a queue, if there are no subscribers attached to it currently or if there are no durable subscriptions. Create a proxy service to consume the alert from the topic and see whether you are getting it within the proxy's pipeline.
-
JMS Exception - unable to connect to the JMS destination
Hi,
I've configured WebLogic10R3 Cluster with one Admin Server and 2 Managed Servers.
I deployed the application to the Cluster. (Ie. both Managed 1 and Managed Server 2.)
I am geeting the following JMS destination not found exception while starting the Second Managed Server.
There are no errors occurred in the First Managed Server.
{color:#ff0000}<Warning> <EJB> <BEA-010061>
<The Message-Driven EJB: SysAuditLogger is unable to connect to the JMS destination: topic/efpAuditTopic.
The Error was: weblogic.jms.common.JMSException: could not find Server efpserver_man2
Nested exception: weblogic.jms.common.JMSException: could not find Server efpserver_man2
Nested exception: weblogic.jms.common.JMSException: could not find Server efpserver_man2
Nested exception: weblogic.jms.common.JMSException: could not find Server efpserver_man2
Nested exception: weblogic.messaging.dispatcher.DispatcherException: could not find Server efpserver_man2
Nested exception: javax.naming.NameNotFoundException: Unable to resolve 'weblogic.messaging.dispatcher.S:efpserver_man2.
Resolved 'weblogic .messaging.dispatcher'; remaining name 'S:efpserver_man2>{color}
Configuration Details:
##config.xml:
<?xml version='1.0' encoding='UTF-8'?>
<domain xmlns="http://www.bea.com/ns/weblogic/920/domain" xmlns:sec="http://www.bea.com/ns/weblogic/90/security" xmlns:wls="http://www.bea.com/ns/weblogic/90/security/wls" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.bea.com/ns/weblogic/90/security/wls [http://www.bea.com/ns/weblogic/90/security/wls.xsd] [http://www.bea.com/ns/weblogic/920/domain] [http://www.bea.com/ns/weblogic/920/domain.xsd] [http://www.bea.com/ns/weblogic/90/security/xacml] [http://www.bea.com/ns/weblogic/90/security/xacml.xsd] [http://www.bea.com/ns/weblogic/90/security] [http://www.bea.com/ns/weblogic/90/security.xsd]">
<name>efpdomain</name>
<domain-version>10.3.0.0</domain-version>
<security-configuration>
<name>efpdomain</name>
<realm>
<sec:authentication-provider xsi:type="wls:default-authenticatorType"></sec:authentication-provider>
<sec:authentication-provider xsi:type="wls:default-identity-asserterType">
<sec:active-type>AuthenticatedUser</sec:active-type>
</sec:authentication-provider>
<sec:role-mapper xmlns:xac="http://www.bea.com/ns/weblogic/90/security/xacml" xsi:type="xac:xacml-role-mapperType"></sec:role-mapper>
<sec:authorizer xmlns:xac="http://www.bea.com/ns/weblogic/90/security/xacml" xsi:type="xac:xacml-authorizerType"></sec:authorizer>
<sec:adjudicator xsi:type="wls:default-adjudicatorType"></sec:adjudicator>
<sec:credential-mapper xsi:type="wls:default-credential-mapperType"></sec:credential-mapper>
<sec:cert-path-provider xsi:type="wls:web-logic-cert-path-providerType"></sec:cert-path-provider>
<sec:cert-path-builder>WebLogicCertPathProvider</sec:cert-path-builder>
<sec:name>myrealm</sec:name>
</realm>
<default-realm>myrealm</default-realm>
<credential-encrypted>{3DES}hcdd+yZGXk5DHgRKqCM7E86l4+VxPcZ9Ut7rB6WaXqMyvbtDjDUKNCKbMQdCN/BEYCv5E0N4Hms9kntfqhaduDO1WGMtbmJL</credential-encrypted>
<node-manager-username>weblogic</node-manager-username>
<node-manager-password-encrypted>{3DES}Q2xO0EiChbay/HkRiorTjg==</node-manager-password-encrypted>
</security-configuration>
<server>
<name>AdminServer</name>
<listen-address>192.168.12.240</listen-address>
</server>
<server>
<name>efpserver_man1</name>
<listen-port>8011</listen-port>
<cluster>efpcluster</cluster>
<listen-address>192.168.12.240</listen-address>
<xml-registry>XMLEFP</xml-registry>
<jta-migratable-target>
<user-preferred-server>efpserver_man1</user-preferred-server>
<cluster>efpcluster</cluster>
</jta-migratable-target>
</server>
<server>
<name>efpserver_man2</name>
<listen-port>8012</listen-port>
<cluster>efpcluster</cluster>
<listen-address>192.168.12.240</listen-address>
<xml-registry>XMLEFP</xml-registry>
<jta-migratable-target>
<user-preferred-server>efpserver_man2</user-preferred-server>
<cluster>efpcluster</cluster>
</jta-migratable-target>
</server>
<cluster>
<name>efpcluster</name>
<cluster-address>192.168.12.240:8011,192.168.12.240:8012</cluster-address>
<multicast-address>239.192.0.0</multicast-address>
</cluster>
<embedded-ldap>
<name>efpdomain</name>
<credential-encrypted>{3DES}q/XQGirHcAcgi4iwPiXIkRHP8xte4xVBgJwjM+qMwbk=</credential-encrypted>
</embedded-ldap>
<configuration-version>10.3.0.0</configuration-version>
<app-deployment>
<name>efp</name>
<target>efpcluster</target>
<module-type>ear</module-type>
<source-path>applications\efp.ear</source-path>
<security-dd-model>DDOnly</security-dd-model>
</app-deployment>
<xml-registry>
<name>XMLEFP</name>
<document-builder-factory>weblogic.apache.xerces.jaxp.DocumentBuilderFactoryImpl</document-builder-factory>
<sax-parser-factory>weblogic.apache.xerces.jaxp.SAXParserFactoryImpl</sax-parser-factory>
<transformer-factory>weblogic.apache.xalan.processor.TransformerFactoryImpl</transformer-factory>
</xml-registry>
<jms-server>
<name>eFpJMSServer</name>
<target>efpserver_man1 (migratable)</target>
<persistent-store>eFpJMSJDBCStore</persistent-store>
</jms-server>
<jms-server>
<name>eFpJMSServer2</name>
<target>efpserver_man2 (migratable)</target>
<persistent-store>eFpJMSJDBCStore2</persistent-store>
</jms-server>
<migratable-target>
<name>efpserver_man1 (migratable)</name>
<notes>繧キ繧ケ繝・Β逕滓・縺ォ繧医k繝・ヵ繧ゥ繝ォ繝医・繧オ繝シ繝千畑遘サ陦悟庄閭ス蟇セ雎。縺ァ縺吶よ焔蜍輔〒蜑企勁縺励↑縺・〒縺上□縺輔>縲・/notes>
<user-preferred-server>efpserver_man1</user-preferred-server>
<cluster>efpcluster</cluster>
</migratable-target>
<migratable-target>
<name>efpserver_man2 (migratable)</name>
<notes>繧キ繧ケ繝・Β逕滓・縺ォ繧医k繝・ヵ繧ゥ繝ォ繝医・繧オ繝シ繝千畑遘サ陦悟庄閭ス蟇セ雎。縺ァ縺吶よ焔蜍輔〒蜑企勁縺励↑縺・〒縺上□縺輔>縲・/notes>
<user-preferred-server>efpserver_man2</user-preferred-server>
<cluster>efpcluster</cluster>
</migratable-target>
<jdbc-store>
<name>eFpJMSJDBCStore</name>
<prefix-name>WLJMS_</prefix-name>
<data-source>eFpNonXADataSource</data-source>
<target>efpserver_man1 (migratable)</target>
</jdbc-store>
<jdbc-store>
<name>eFpJMSJDBCStore2</name>
<prefix-name>WLJMS2_</prefix-name>
<data-source>eFpNonXADataSource</data-source>
<target>efpserver_man2 (migratable)</target>
</jdbc-store>
<jms-system-resource>
<name>eFPJMS</name>
<target>efpcluster</target>
<sub-deployment>
<name>eFPServer</name>
<target>eFpJMSServer</target>
</sub-deployment>
<sub-deployment>
<name>eFPServer2</name>
<target>eFpJMSServer2</target>
</sub-deployment>
<descriptor-file-name>jms/efpjms-jms.xml\JMS Description-jms.xml</descriptor-file-name>
</jms-system-resource>
<admin-server-name>AdminServer</admin-server-name>
<jdbc-system-resource>
<name>eFpDataSource</name>
<target>efpcluster</target>
<descriptor-file-name>jdbc/eFpDataSource-2004-jdbc.xml</descriptor-file-name>
</jdbc-system-resource>
<jdbc-system-resource>
<name>eFpNonXADataSource</name>
<target>efpcluster</target>
<descriptor-file-name>jdbc/eFpNonXADataSource-6172-jdbc.xml</descriptor-file-name>
</jdbc-system-resource>
</domain>
##JMS Description-jms.xml
<?xml version='1.0' encoding='UTF-8'?>
<weblogic-jms xmlns="http://www.bea.com/ns/weblogic/weblogic-jms" xmlns:sec="http://www.bea.com/ns/weblogic/90/security" xmlns:wls="http://www.bea.com/ns/weblogic/90/security/wls" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.bea.com/ns/weblogic/weblogic-jms [http://www.bea.com/ns/weblogic/weblogic-jms/1.0/weblogic-jms.xsd]">
<connection-factory name="ConnectionFactory">
<default-targeting-enabled>true</default-targeting-enabled>
<jndi-name>jms/ConnectionFactory</jndi-name>
<security-params>
<attach-jmsx-user-id>false</attach-jmsx-user-id>
</security-params>
</connection-factory>
<connection-factory name="XAConnectionFactory">
<default-targeting-enabled>true</default-targeting-enabled>
<jndi-name>jms/XAConnectionFactory</jndi-name>
<transaction-params>
<transaction-timeout>3600</transaction-timeout>
<xa-connection-factory-enabled>true</xa-connection-factory-enabled>
</transaction-params>
<security-params>
<attach-jmsx-user-id>false</attach-jmsx-user-id>
</security-params>
</connection-factory>
<uniform-distributed-queue name="ActiveActivityQueue">
<default-targeting-enabled>true</default-targeting-enabled>
<jndi-name>queue/efpActiveActivityQueue</jndi-name>
<load-balancing-policy>Round-Robin</load-balancing-policy>
<forward-delay>-1</forward-delay>
<reset-delivery-count-on-forward>true</reset-delivery-count-on-forward>
</uniform-distributed-queue>
<uniform-distributed-topic name="AdminTopic">
<default-targeting-enabled>true</default-targeting-enabled>
<jndi-name>topic/efpAdminTopic</jndi-name>
<load-balancing-policy>Round-Robin</load-balancing-policy>
</uniform-distributed-topic>
<uniform-distributed-topic name="AuditTopic">
<default-targeting-enabled>true</default-targeting-enabled>
<jndi-name>topic/efpAuditTopic</jndi-name>
<load-balancing-policy>Round-Robin</load-balancing-policy>
</uniform-distributed-topic>
<uniform-distributed-topic name="ErrorTopic">
<default-targeting-enabled>true</default-targeting-enabled>
<jndi-name>topic/efpErrorTopic</jndi-name>
<load-balancing-policy>Round-Robin</load-balancing-policy>
</uniform-distributed-topic>
<uniform-distributed-topic name="FreeTextTopic">
<default-targeting-enabled>true</default-targeting-enabled>
<jndi-name>topic/efpFreeTextTopic</jndi-name>
<load-balancing-policy>Round-Robin</load-balancing-policy>
</uniform-distributed-topic>
<uniform-distributed-topic name="ReportingTopic">
<default-targeting-enabled>true</default-targeting-enabled>
<jndi-name>topic/efpReportingTopic</jndi-name>
<load-balancing-policy>Round-Robin</load-balancing-policy>
</uniform-distributed-topic>
</weblogic-jms>
-----Getting the following exception while trying to connect the JMS destination I am using weblogic 10.3.3 connecting to oracle AQ. The config has been done as per the 'Interoperating with Oracle AQ JMS' document from oracle. I could see that while deploying the application the number of connections in the database increasing to 15 and getting the following error message.
<Jun 15, 2011 4:14:29 PM EDT> <Warning> <EJB> <BEA-010061> <The Message-Driven E
JB: SampleEJBBean is unable to connect to the JMS destination: jms/propQueue. Th
e Error was:
oracle.jms.AQjmsException: Internal error: Cannot obtain XAConnection weblogic.c
ommon.resourcepool.ResourceLimitException: No resources currently available in p
ool TestDataSource to allocate to applications, please increase the size of the
pool and retry..
at weblogic.common.resourcepool.ResourcePoolImpl.reserveResourceInternal
(ResourcePoolImpl.java:555)
at weblogic.common.resourcepool.ResourcePoolImpl.reserveResource(Resourc
ePoolImpl.java:332)
at weblogic.common.resourcepool.ResourcePoolImpl.reserveResource(Resourc
ePoolImpl.java:322)
at weblogic.jdbc.common.internal.ConnectionPool.reserve(ConnectionPool.j
ava:438)
at weblogic.jdbc.common.internal.ConnectionPool.reserve(ConnectionPool.j
ava:317)
at weblogic.jdbc.common.internal.ConnectionPoolManager.reserve(Connectio
nPoolManager.java:93)
at weblogic.jdbc.common.internal.ConnectionPoolManager.reserve(Connectio
nPoolManager.java:61)
at weblogic.jdbc.jta.DataSource.getXAConnectionFromPool(DataSource.java:
1670)
at weblogic.jdbc.jta.DataSource.refreshXAConnAndEnlist(DataSource.java:1
468)
at weblogic.jdbc.jta.DataSource.getConnection(DataSource.java:439)
at weblogic.jdbc.jta.DataSource.connect(DataSource.java:396)
at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSour
ce.java:355)
at oracle.jms.AQjmsDBConnMgr.getConnection(AQjmsDBConnMgr.java:566)
at oracle.jms.AQjmsXAConnection.createXAQueueSession(AQjmsXAConnection.j
ava:214)
at weblogic.ejb.container.internal.JMSConnectionPoller.setUpQueueSession
s(JMSConnectionPoller.java:1545)
at weblogic.ejb.container.internal.JMSConnectionPoller.createJMSConnecti
on(JMSConnectionPoller.java:2047)
at weblogic.ejb.container.internal.JMSConnectionPoller.connect(JMSConnec
tionPoller.java:787)
at weblogic.ejb.container.internal.MDConnectionManager.startConnectionPo
lling(MDConnectionManager.java:244)
at weblogic.ejb.container.manager.MessageDrivenManager.start(MessageDriv
enManager.java:584)
at weblogic.ejb.container.deployer.MessageDrivenBeanInfoImpl.mdManagerSt
art(MessageDrivenBeanInfoImpl.java:1334)
at weblogic.ejb.container.deployer.MessageDrivenBeanInfoImpl.deployMessa
geDrivenBeans(MessageDrivenBeanInfoImpl.java:1314)
at weblogic.ejb.container.deployer.EJBDeployer.deployMessageDrivenBeans(
EJBDeployer.java:1669)
at weblogic.ejb.container.deployer.EJBDeployer.start(EJBDeployer.java:14
93)
at weblogic.ejb.container.deployer.EJBModule.start(EJBModule.java:614)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(Module
ListenerInvoker.java:249)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleSta
teDriver.java:427)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineD
river.java:43)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStat
eDriver.java:119)
at weblogic.application.internal.flow.StartModulesFlow.activate(StartMod
ulesFlow.java:28)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.ja
va:1269)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineD
river.java:43)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.
java:409)
at weblogic.application.internal.SingleModuleDeployment.activate(SingleM
oduleDeployment.java:43)
at weblogic.application.internal.DeploymentStateChecker.activate(Deploym
entStateChecker.java:161)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(Ap
pContainerInvoker.java:79)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.ac
tivate(AbstractOperation.java:569)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.ac
tivateDeployment(ActivateOperation.java:150)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.do
Commit(ActivateOperation.java:116)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.co
mmit(AbstractOperation.java:323)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploym
entCommit(DeploymentManager.java:844)
at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeplo
ymentList(DeploymentManager.java:1253)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(
DeploymentManager.java:440)
at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.com
mit(DeploymentServiceDispatcher.java:164)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallb
ackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallb
ackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallb
ackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:69)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTunin
gWorkManagerImpl.java:528)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173) -
How to pick(or consume) messages from Woblogic JMS Queue only when DB is UP
Hi,
I have a requirement to pick(or consume) messages from Woblogic JMS Queue only when DB is UP.
When DB is down, messages should remain in queue. When DB is up, messaged should be picked on scheduler basis.
We are using SOA suite 11g(BPEL or mediator,JMS Adapter).
What is the best way to achive it in SOA 11g.
I tried, but when I setup a Consumer, there is no control over there. Messages are picked automatically.
Please advise.
Thanks
Ramsomething wrong with the design.
why dont you set the retry options in the fault policies?
So if the external DB is down you could reprocess them after specified interval or make it go to human retry queue.
Then you could use SOA api to retry all of them.
--Prasanna -
MQ Adapter does not clear the rejected message from the queue
Hi All,
I'm using a MQ Adapter to fetch the message from the queue without any Backout queue configured. However, whenever there is any bad structured message found in the queue, MQ adapter rejects the message and moves the message to the rejmsg folder but does not clear it off the queue, as a result of which it keeps retrying the same hence, filling the logs and the physical memory. Somehow we do not have any backout queue configured so I can move the message to blackout queue. I have tried configuring the jca retry properties and global jca retry as well but to no avail.
- Is it not the default behaviour of MQ Adapter to remove the rejected message from the queue irrespective of Backout queue is configured or not? The same behaviour working well with the JMS and File Adapter though.
- Is there any way I can make MQ Adapter delete the message from that queue once it is rejected?
Regards,
Neeraj SehgalHi Jayson,
Check this URL which answers a problem with com.sap.engine.boot.loader.ResourceMultiParentClassLoader problem:
http://209.85.175.132/search?q=cache:RnFZ9viwuKkJ:https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/pcd!3aportal_content!2fcom.sap.sdn.folder.sdn!2fcom.sap.sdn.folder.application!2fcom.sap.sdn.folder.roles!2fcom.sap.sdn.folder.navigationroles!2fcom.sap.sdn.role.anonymous!2fcom.sap.sdn.tln.workset.forums!2fforumtest!2fcom.sap.sdn.app.iview.forumthread%3FQuickLink%3Dthread%26tstart%3D45%26threadID%3D1020700+com.sap.engine.boot.loader.ResourceMultiParentClassLoader&hl=en&ct=clnk&cd=3&gl=in&client=firefox-a
Please check that the JDK compliance level is at 5.0
Window->Preferences->Java->Compiler->Compiler compliance level set this to 5.0
Set the installed JRE to the one you have mentioned JDK 5.0 update 16
Window->Preferences->Java->Installed JRE's->
Click on the add button to select the path of your JDK.
once completed click on the check box next to it.
regards,
AKD -
Removing superseded messages from the queue
Does JSMQ provide any way for a producer to remove a message from the queue which it queued some time ago but which it no longer wishes to send?
I am investigating the use of JSMQ in a military battlemap application connecting nodes over low bandwidth/unreliable connections. The reason we want to be able to remove messages is as follows: Say a producer sends a low priority message to the queue regarding a unit's position. Later on the same producer sends an update regarding the same unit to the queue. If the first message is still present in the queue (ie has not been sent yet) then we want the producer to be able to remove it as it is now superseded by the new message and we don't want to waste bandwidth sending the old message first.
I know we can set an expiry time on messages, but this doesn't really solve our problem. We want the original message to stay in the queue indefinately (until it is read by the consumer) unless it is superseded by a new message in which case we want to remove it.
Thanks
RogerHi Roger,
JMS does not support the removal of messages from a queue
as you described. I can't think of a way to not deliver the old
message once it was already sent.
Alternatives I can think of:
- Adjust the interval at which the consumer reads the messages
off the queue and/or the number of messages that are read;
so that the consumer will see the old and new messages
and can decide which one to use. This does not address the
bandwidth issue but allows the consumer to behave smarter.
- Similar to above, but on the producer side. The producer waits
for some interval before sending a message, in case an
updated position of a unit arrives at the producer. This might not
be good if a consumer needs to know the location of a unit as
soon as it is available.
- Use a topic instead of a queue. When using queues, old
messages (containing old positions) sent to a queue are kept
until the consumer reads it. With topics, if no consumers are
around, the message is tossed. However, if you really need old
messages to lie around (e.g. need to know last position of
unit), this won't suit your needs.
Sorry I don't have a straight answer for you, hope this helps
somewhat.
-i
http://wwws.sun.com/software/products/message_queue/index.html -
AQJMSMDBEJB is unable to connect to the JMS destination
I am trying to integrate WebLogic 8.1 MDB and Oracle 9i AQ using a start-up class that creates XAConnection and Queue. However, I'm currently getting this error and I'm not sure what I need to do.
<The Message-Driven EJB: AQJMSMDBEJB is unable to connect to
the JMS destination: AQJMSQueue. The Error was:
oracle.jms.AQjmsException: JMS-137: Payload factory must be specified for destinations with ADT payloads
oracle.jms.AQjmsException: JMS-137: Payload factory must be specified for destinations with ADT payloads
at oracle.jms.AQjmsError.throwEx(AQjmsError.java:266)
at oracle.jms.AQjmsConsumer.<init>(AQjmsConsumer.java:326)
at oracle.jms.AQjmsConsumer.<init>(AQjmsConsumer.java:196)
at oracle.jms.AQjmsSession.createReceiver(AQjmsSession.java:1415)
at oracle.jms.AQjmsSession.createReceiver(AQjmsSession.java:1386)
at weblogic.deployment.jms.WrappedTransactionalSession_oracle_jms_AQjmsXAQueueSession.createReceiver(Unknown Sou
rce)
at weblogic.ejb20.internal.JMSConnectionPoller.setUpQueueSessions(JMSConnectionPoller.java:1609)
at weblogic.ejb20.internal.JMSConnectionPoller.createJMSConnection(JMSConnectionPoller.java:1844)
at weblogic.ejb20.internal.JMSConnectionPoller.connectToJMS(JMSConnectionPoller.java:1087)
at weblogic.ejb20.internal.JMSConnectionPoller.trigger(JMSConnectionPoller.java:970)
at weblogic.time.common.internal.ScheduledTrigger.run(ScheduledTrigger.java:243)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
at weblogic.time.common.internal.ScheduledTrigger.executeLocally(ScheduledTrigger.java:229)
at weblogic.time.common.internal.ScheduledTrigger.execute(ScheduledTrigger.java:223)
at weblogic.time.server.ScheduledTrigger.execute(ScheduledTrigger.java:50)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
>1. Security:
Perhaps you need to check the security configuration for the queue (Q) to ensure it matches the MDB (M) security parameters.
Q:
Weblogic Security Realms: User/Group
JMSModule Security: Role/Group , Policy: Role
M:
MDB: MDBRole/Principal (User) in weblogic-ejb-jar.xml
2. Double check that the queue created in weblogic
3. Test your queue (manually create a new message using weblogic console) or observe unconsumed messages (if producer has run and placed messages)
Carlos -
How Can I delete multiple messages from the same address in Mac Mail
Hope this is in the correct Community. Hope someone can help me to delete multiple email messages from the same email address.
At the moment I can do it by holding down the Command key and highlighting each email, but that can be difficult with many messages
to delete. Is there a quicker way?
Thanks for any help on this.Thanks for the reply, appreciate your input. I did find another way of doing it and that is to highlight the first e-mail, hold down the shift key and click on the last one. That highlights them all and then they can all be deleted. Your ideas also work of course and I thank you for that. Cheers.
-
How to delete message from the fodler of AOL account using Java mail
Hello All,
I am using Java MAil API in my application, i want to delete message from AOL account's folder,
when i set the folder as "Recently Deleted" or "Trash" , i get an exception as "folder does not exist".
when i tested , some times mail is moving into Recently Deleted folder, but not every time.
this is happening in both the interface as AOl Interface or my application.
when i use folder.close(true) after setting the flag of message as DELETED. it completely remove the message from the acount.
but i want to let the message be remained in the Recently Deleted folder. what should i do.
i dont want to remove the message completely from the account.I am using IMAP also.You'll need to figure out what the real name of the "Recently Deleted" folder is on the AOL IMAP server
(assuming it's a real folder and not some sort of "virtual" folder), then copy the message into that folder.
See the folderlist.java demo program as a way to explore the names of all the folders on the server. -
How to read the messages in the JMS Queue using JMX
Hi,
I want to read messages in the JMS queue using JMX. I was able to read using QueueBrowser but want to modify priority of the messages using JMX.
I tried to use JMSDestinationRuntimeMBean but it does not allow us to read messages unless we pass the message Id. Is there any way that I can get all the messages in the queue.
I am using Weblogic 8.1 SP4
Can someone please help me in this regard.
Thanks,
Kiran.
Edited by KGudipati at 10/22/2007 1:22 AMHi,
As far as i know, JMS Object Messages is not supported by XI JMS adapter.
you need to have the JMS provider to transform the message to bytes messages.
(Refer to SAP note 856346) -
How can I get rec'd text messages from the same subscriber not be appended
Hi,
Is there a way to configure the Apple iphone so that text messages from the same subscriber are displayed separately rather than appended to each other? In this way accidentally deleting one message wouldn't delete the entire history of messages from this subscriber.
When I launch the SMS service by pressing the green SMS button I am met by a screen that says Text Messages. On the left of this there is a button that says Edit and on the right there is one that is for writing a new message. Down the page are my messages all grouped by the originator of each messages. If I choose one I see that all messages from this source are present appended one after the other. There is also the option now to Clear on the top right hand corner. It is this Clear option I am worried about. If I choose Clear I am asked for a confirmation and then lo and behold as expected all my messages from this subscriber are deleted.
This is a work phone for support purposes and most of the texts will be from the telephone operator (i.e. the one same number) saying we have an email waiting to be read with a subject title giving a little description. I want to be in a position so that I don't accidentally delete the entire history of messages, say some evening when I'm tired or Monday morning if I 'm a bit asleep. Ideally I would prefer that each text message would stand alone in the Text Messages window irrespective of the originator and not be appended in a group fashion. Is there a way to do this?
Kind regards,
MThere is no way to do that on the iPhone. Messages will always be grouped into a 'conversation' based on the sender/recipient. Only Apple can change that behavior.
You can submit feedback to Apple: http://www.apple.com/feedback/iphone.html. -
A message from the creator of Skype?
Hello,
a freind of mine got this kessage and I wanted to know if it is official. (I am guessing no, but better safe than sorry).
<<< Hi , this is a message from the creator of Skype and it tells you a little bit about what is going to happen to Skype on the 15th of March. Please don't send this back to the person you recieved it from. Dear Skype members, Skype is supposed to be closing down March 15th because it is becoming very overpopulated. There have been many members complaining that Skype is becoming very slow. Records show that there are many active Skype members and also many new members. We will be sending this message around to see if members are active or not. If you are active please send to 15 other users using copy+paste to show that you are still active. *Those who do not send this message within 2 weeks
will be deleted without hesitation to make more space. Send this message to all of your friends to show that you are still active and you will not be deleted. Founder of Skype...remember to send this to 15 other people so your account SEND THIS MESSAGE TO 15 FRIENDS TO KEEP YOUR SKYPE ACCOUNT—
Thank you. Peace Out.Hi!
First of all, would the creator of Skype acually want you to send this message to 15 people? How the heck would he know!!!
1. He wouldn't know how many people it was sent to, you could've sent it to only 1!!
2. He wouldn't know the people the message was sent to.
3. Would he know if you EVEN GOT THE MESSAGE IN THE FIRST PLACE?!?!?
This is actually a scam circulating all over IMs connected to the internet. This is just a chain letter. Look at all the typos in this. So, the next time you see 'Send this to 15 people or else', DELETE.
Br,
BlackIncerator -
Error message from the source system, Caller 09 contains an error message.
Hi,
Guru's, i got an error massage when my process chain is running(Daily) in BIW 7.0, the error got in Data Loading from source to PSA or data targets. The errors having the below details
Error message from the source system
Diagnosis
An error occurred in the source system.
System Response
Caller 09 contains an error message.
Further analysis:
The error occurred in Extractor .
Refer to the error message.
Procedure
How you remove the error depends on the error message.
Note
If the source system is a Client Workstation, then it is possible that the file that you wanted to load was being edited at the time of the data request. Make sure that the file is in the specified directory, that it is not being processed at the moment, and restart the request. "
Can any body help me out of this situation what to do and how to resolv ethe problem.
Thanks and Regards,.
Taps....Caller 09 is a very common issue - please search the forums before posting....
Arun
Maybe you are looking for
-
Using Windows 7, I attempted to install an update for Itunes, when i returned to computer it gave this message ....Program cannot shut because MSVCR80.dll is missing from your computer. When I tried to open itunes it told me becuase of this error I n
-
Excel 2008 Number Problems OS 10.7.5
I have suddenly developed a problem in my Excel worksheets. I cannot get a plain number to show. If I format the cell for either number or general, I get the currency format. Every number has a .00 in it or is rounded off to the numbers before the do
-
Validate "work e-mail" from user information list --give me wrong result
How can I validate the user "work email" from User Information List is working properly? I am following this >> http://social.msdn.microsoft.com/Forums/sharepoint/en-US/e4d41f77-c7e4-40ef-b85f-de7f972f2a3f/allow-submitter-see-only-the-items-that-are-
-
Retrieve folder owner details (in Miscellaneous tab) from KM
Dear Experts, I am trying to get the owner details of a folder created under (folder name)>settings>properties-->Miscellaneous (tab) -->Owner I am using the below code which I got from SDN. But it is getting the users (cmadmin_service/ice_service) in
-
How to write individual frames from a media file to a file.And also play it
Hi, How do i access indivual media frame and save it to another file. One way is to use Cut.java, but i am unable to cut the frames repeatedly. I want to Seek an individual frame in the media and then write the frame to a file. regards. devendra.