"[EMAIL PROTECTED]" wrote : You obviously have some skills since you claim a Phd. | | For us to help you we need enough information (supplying a simple mdb jar | that demostrates your problem would be one solution). | | Debugging (show us what you are doing): | http://www.jboss.org/index.html?module=bb&op=viewtopic&t=43573 | Post the logging for the MDB startup (i.e. when it makes the construction) | and JBossMQ. | Including what happens at the send to JBossMQ. | | Checking your Config (minimum): | Show your ejb-jar.xml/jboss.xml with the full context, i.e. the entire MDB | | jbossmq-state.xml (no longer used) | http://www.jboss.org/wiki/Wiki.jsp?page=ConfigJBossMQState | | Just adding: | | | public void onMessage(Message m) | | { | | System.out.println(m); | | ... | | | will show me a lot of information, i.e. the message properties (like persistence | and the subscription id).
Unfortunately, the skills required for a PhD are somewhat different from the skills required to achieve our desired goal: topic persistency. But with your help, I hope we can solve this problem. First of all, the MDB simply prints the actual Message parameter value, as you requested. The ejb-jar.xml: | <?xml version="1.0" encoding="UTF-8"?> | <ejb-jar version="2.1" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd"> | <display-name>Beans</display-name> | <enterprise-beans> | <session> | <ejb-name>TestServiceBean</ejb-name> | <home>com.test.msg.TestServiceHome</home> | <remote>com.test.msg.TestService</remote> | <ejb-class>com.test.msg.TestServiceBean</ejb-class> | <session-type>Stateful</session-type> | <transaction-type>Container</transaction-type> | | <resource-ref> | <res-ref-name>jms/TestConnectionFactory</res-ref-name> | <res-type>javax.jms.TopicConnectionFactory</res-type> | <res-auth>Container</res-auth> | <res-sharing-scope>Shareable</res-sharing-scope> | </resource-ref> | | <resource-env-ref> | <resource-env-ref-name>jms/TestTopic</resource-env-ref-name> | <resource-env-ref-type>javax.jms.Topic</resource-env-ref-type> | | </resource-env-ref> | <!-- | <message-destination-ref> | <message-destination-ref-name>jms/TestTopic</message-destination-ref-name> | <message-destination-type>javax.jms.Topic</message-destination-type> | <message-destination-usage>Consumes</message-destination-usage> | <message-destination-link>TestDestination</message-destination-link> | </message-destination-ref> | --> | </session> | | | <session> | <ejb-name>TimerBean</ejb-name> | <local-home>com.test.msg.TimerLocalHome</local-home> | <local>com.test.msg.TimerLocal</local> | <home>com.test.msg.TimerHome</home> | <remote>com.test.msg.TimerRemote</remote> | | <ejb-class>com.test.msg.TimerBean</ejb-class> | <session-type>Stateless</session-type> | <transaction-type>Container</transaction-type> | | <ejb-ref> | <ejb-ref-name>ejb/TestEntityFacade</ejb-ref-name> | <ejb-ref-type>Session</ejb-ref-type> | <home>com.test.msg.TestEntityFacadeHome</home> | <remote>com.test.msg.TestEntityFacade</remote> | </ejb-ref> | </session> | | | <message-driven> | <ejb-name>TestTopicMDBBean</ejb-name> | <ejb-class>com.test.msg.TestTopicMDBBean</ejb-class> | <Test-type>javax.jms.MessageListener</Test-type> | <transaction-type>Container</transaction-type> | <message-destination-type>javax.jms.Topic</message-destination-type> | | <message-destination-link>TestDestination</message-destination-link> | <activation-config> | <activation-config-property> | <activation-config-property-name>subscriptionDurability</activation-config-property-name> | <activation-config-property-value>Durable</activation-config-property-value> | </activation-config-property> | <activation-config-property> | <activation-config-property-name>clientId</activation-config-property-name> | <activation-config-property-value>DurableSubscriberExample</activation-config-property-value> | </activation-config-property> | <activation-config-property> | <activation-config-property-name>subscriptionName</activation-config-property-name> | <activation-config-property-value>MySubscriptionName</activation-config-property-value> | </activation-config-property> | </activation-config> | | <ejb-ref> | <ejb-ref-name>ejb/TestEntityFacade</ejb-ref-name> | <ejb-ref-type>Session</ejb-ref-type> | <home>com.test.msg.TestEntityFacadeHome</home> | <remote>com.test.msg.TestEntityFacade</remote> | </ejb-ref> | </message-driven> | | <entity> | <ejb-name>MessageEntryBean</ejb-name> | <local-home>com.test.msg.TestEntityLocalHome</local-home> | <local>com.test.msg.TestEntityLocal</local> | <ejb-class>com.test.msg.TestEntityBean</ejb-class> | <persistence-type>Container</persistence-type> | <prim-key-class>java.lang.String</prim-key-class> | <reentrant>false</reentrant> | <cmp-version>2.x</cmp-version> | <abstract-schema-name>MessageEntryBean</abstract-schema-name> | <cmp-field> | <description>no description</description> | <field-name>networkServerId</field-name> | </cmp-field> | <cmp-field> | <description>no description</description> | <field-name>segmentCount</field-name> | </cmp-field> | <cmp-field> | <description>no description</description> | <field-name>profileName</field-name> | </cmp-field> | <cmp-field> | <description>no description</description> | <field-name>sentDate</field-name> | </cmp-field> | <cmp-field> | <description>no description</description> | <field-name>messageId</field-name> | </cmp-field> | <cmp-field> | <description>no description</description> | <field-name>deliveryStatus</field-name> | </cmp-field> | <primkey-field>networkServerId</primkey-field> | <security-identity> | <use-caller-identity/> | </security-identity> | | <query> | <query-method> | <method-name>findMessageBySentDate</method-name> | <method-params> | <method-param>java.util.Date</method-param> | </method-params> | </query-method> | <ejb-ql>select object(a) from MessageEntryBean as a where a.sentDate < ?1</ejb-ql> | </query> | | </entity> | | <session> | <description> | [CDATA[Session facade for TestEntityBean.]] | </description> | <ejb-name>TestEntityFacade</ejb-name> | <home>com.test.msg.TestEntityFacadeHome</home> | <remote>com.test.msg.TestEntityFacade</remote> | <ejb-class>com.test.msg.TestEntityFacadeBean</ejb-class> | <session-type>Stateless</session-type> | <transaction-type>Container</transaction-type> | <ejb-local-ref> | <ejb-ref-name>ejb/TestEntity</ejb-ref-name> | <ejb-ref-type>Entity</ejb-ref-type> | <local-home>com.test.msg.TestEntityLocalHome</local-home> | <local>com.test.msg.TestEntityLocal</local> | <ejb-link>test.jar#MessageEntryBean</ejb-link> | </ejb-local-ref> | | </session> | </enterprise-beans> | <assembly-descriptor> | | | <!-- TimerBean --> | | <container-transaction> | <method> | <ejb-name>TimerBean</ejb-name> | <method-name>ejbTimeout</method-name> | <method-params> | <method-param>javax.ejb.Timer</method-param> | </method-params> | </method> | <trans-attribute>RequiresNew</trans-attribute> | </container-transaction> | | <message-destination> | <message-destination-name>TestDestination</message-destination-name> | </message-destination> | <message-destination> | <message-destination-name>TestTimerDestination</message-destination-name> | </message-destination> | </assembly-descriptor> | </ejb-jar> | The jboss.xml: | <?xml version="1.0" encoding="UTF-8"?> | | <!DOCTYPE jboss PUBLIC | "-//JBoss//DTD JBOSS 4.0//EN" | "http://www.jboss.org/j2ee/dtd/jboss_4_0.dtd"> | | <jboss> | <enterprise-beans> | <session> | <ejb-name>TestServiceBean</ejb-name> | <jndi-name>SAPBean</jndi-name> | <resource-ref> | <res-ref-name>jms/TestConnectionFactory</res-ref-name> | <jndi-name>java:JmsXA</jndi-name> | </resource-ref> | | <resource-env-ref> | <resource-env-ref-name>jms/TestTopic</resource-env-ref-name> | <jndi-name>jms/TestTopic</jndi-name> | </resource-env-ref> | | </session> | <session> | <ejb-name>TimerBean</ejb-name> | <jndi-name>TimerBean</jndi-name> | <ejb-ref> | <ejb-ref-name>ejb/TestEntityFacade</ejb-ref-name> | <jndi-name>ejb/TestEntityFacade</jndi-name> | </ejb-ref> | | </session> | <message-driven> | <ejb-name>TestTopicMDBBean</ejb-name> | <configuration-name>My Config</configuration-name> | <resource-adapter-name>jms-ra.rar</resource-adapter-name> | <destination-jndi-name>jms/TestTopic</destination-jndi-name> | <mdb-user>john</mdb-user> | <mdb-passwd>needle</mdb-passwd> | <!-- <mdb-client-id>DurableSubscriberExample</mdb-client-id>--> | <mdb-subscription-id>MySubscriptionName</mdb-subscription-id> | | <ejb-ref> | <ejb-ref-name>ejb/TestEntityFacade</ejb-ref-name> | <jndi-name>ejb/TestEntityFacade</jndi-name> | </ejb-ref> | </message-driven> | | <entity> | <ejb-name>MessageEntryBean</ejb-name> | <local-jndi-name>TestEntityBean</local-jndi-name> | </entity> | | <session> | <ejb-name>TestEntityFacade</ejb-name> | <jndi-name>ejb/TestEntityFacade</jndi-name> | </session> | </enterprise-beans> | <container-configurations> | <container-configuration> | <container-name>My Config</container-name> | <call-logging>false</call-logging> | <container-invoker>org.jboss.ejb.plugins.jms.JMSContainerInvoker</container-invoker> | <container-interceptors> | <interceptor>org.jboss.ejb.plugins.LogInterceptor</interceptor> | <interceptor>org.jboss.ejb.plugins.SecurityInterceptor</interceptor> | <!-- CMT --> | <interceptor transaction="Container">org.jboss.ejb.plugins.TxInterceptorCMT</interceptor> | <interceptor transaction="Container" metricsEnabled="true">org.jboss.ejb.plugins.MetricsInterceptor</interceptor> | <interceptor transaction="Container">org.jboss.ejb.plugins.MessageDrivenInstanceInterceptor</interceptor> | <!-- BMT --> | <interceptor transaction="Bean">org.jboss.ejb.plugins.MessageDrivenInstanceInterceptor</interceptor> | <interceptor transaction="Bean">org.jboss.ejb.plugins.MessageDrivenTxInterceptorBMT</interceptor> | <interceptor transaction="Bean" metricsEnabled="true">org.jboss.ejb.plugins.MetricsInterceptor</interceptor> | </container-interceptors> | <instance-pool>org.jboss.ejb.plugins.MessageDrivenInstancePool</instance-pool> | <instance-cache></instance-cache> | <persistence-manager></persistence-manager> | <transaction-manager>org.jboss.tm.TxManager</transaction-manager> | <container-invoker-conf> | <JMSProviderAdapterJNDI>DefaultJMSProvider</JMSProviderAdapterJNDI> | <ServerSessionPoolFactoryJNDI>StdJMSPool</ServerSessionPoolFactoryJNDI> | <MaximumSize>15</MaximumSize> | <MaxMessages>1</MaxMessages> | <Optimized>True</Optimized> | </container-invoker-conf> | <container-pool-conf> | <MaximumSize>100</MaximumSize> | <MinimumSize>10</MinimumSize> | </container-pool-conf> | </container-configuration> | | </container-configurations> | | </jboss> | You can download the compressed logs (server & boot) from here: http://mormota.web.elte.hu/logs.txt.bz2 You will find the test ear here: http://mormota.web.elte.hu/test.ear You might need this XML as well: http://mormota.web.elte.hu/test-service.xml View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3863520#3863520 Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3863520 ------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl _______________________________________________ JBoss-user mailing list JBoss-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jboss-user