[JBoss Messaging] - Re: SQLServer configuration file?
by chipschoch
Here is one that works:
<?xml version="1.0" encoding="UTF-8"?>
<!--
Orcle persistence deployment descriptor.
$Id: oracle-persistence-service.xml 1174 2006-08-02 14:14:32Z timfox $
-->
<mbean code="org.jboss.messaging.core.plugin.JDBCPersistenceManager"
name="jboss.messaging:service=PersistenceManager"
xmbean-dd="xmdesc/JDBCPersistenceManager-xmbean.xml">
jboss.jca:service=DataSourceBinding,name=DefaultDS
<depends optional-attribute-name="TransactionManager">jboss:service=TransactionManager
<depends optional-attribute-name="ChannelMapper">jboss.messaging:service=ChannelMapper
java:/DefaultDS
true
true
<![CDATA[
CREATE_MESSAGE_REF=CREATE TABLE JMS_MESSAGE_REFERENCE (CHANNELID INTEGER, MESSAGEID INTEGER, TRANSACTIONID INTEGER NULL, STATE CHAR(1) NULL, ORD INTEGER NULL, DELIVERYCOUNT INTEGER NULL, RELIABLE CHAR(1) NULL, LOADED CHAR(1) NULL, PRIMARY KEY(CHANNELID, MESSAGEID))
CREATE_IDX_MESSAGE_REF_TX=CREATE INDEX JMS_MESSAGE_REF_TX ON JMS_MESSAGE_REFERENCE (TRANSACTIONID)
CREATE_IDX_MESSAGE_REF_ORD=CREATE INDEX JMS_MESSAGE_REF_ORD ON JMS_MESSAGE_REFERENCE (ORD)
CREATE_IDX_MESSAGE_REF_MESSAGEID=CREATE INDEX JMS_MESSAGE_REF_MESSAGEID ON JMS_MESSAGE_REFERENCE (MESSAGEID)
CREATE_IDX_MESSAGE_REF_LOADED=CREATE INDEX JMS_MESSAGE_REF_LOADED ON JMS_MESSAGE_REFERENCE (LOADED)
CREATE_IDX_MESSAGE_REF_RELIABLE=CREATE INDEX JMS_MESSAGE_REF_RELIABLE ON JMS_MESSAGE_REFERENCE (RELIABLE)
INSERT_MESSAGE_REF=INSERT INTO JMS_MESSAGE_REFERENCE (CHANNELID, MESSAGEID, TRANSACTIONID, STATE, ORD, DELIVERYCOUNT, RELIABLE, LOADED) VALUES (?, ?, ?, ?, ?, ?, ?, ?)
DELETE_MESSAGE_REF=DELETE FROM JMS_MESSAGE_REFERENCE WHERE MESSAGEID=? AND CHANNELID=? AND STATE='C'
UPDATE_MESSAGE_REF=UPDATE JMS_MESSAGE_REFERENCE SET TRANSACTIONID=?, STATE='-' WHERE MESSAGEID=? AND CHANNELID=? AND STATE='C'
UPDATE_MESSAGE_REF_NOT_LOADED=UPDATE JMS_MESSAGE_REFERENCE SET LOADED='N' WHERE MESSAGEID=? AND CHANNELID=?
COMMIT_MESSAGE_REF1=UPDATE JMS_MESSAGE_REFERENCE SET STATE='C', TRANSACTIONID = NULL WHERE TRANSACTIONID=? AND STATE='+'
COMMIT_MESSAGE_REF2=DELETE FROM JMS_MESSAGE_REFERENCE WHERE TRANSACTIONID=? AND STATE='-'
ROLLBACK_MESSAGE_REF1=DELETE FROM JMS_MESSAGE_REFERENCE WHERE TRANSACTIONID=? AND STATE='+'
ROLLBACK_MESSAGE_REF2=UPDATE JMS_MESSAGE_REFERENCE SET STATE='C', TRANSACTIONID = NULL WHERE TRANSACTIONID=? AND STATE='-'
LOAD_REF_INFO=SELECT MESSAGEID, ORD, DELIVERYCOUNT, RELIABLE FROM JMS_MESSAGE_REFERENCE WHERE CHANNELID=? AND STATE <> '+' AND LOADED = 'N' AND ORD BETWEEN ? AND ? ORDER BY ORD
SELECT_COUNT_REFS=SELECT COUNT(MESSAGEID) FROM JMS_MESSAGE_REFERENCE WHERE CHANNELID=? AND STATE <> '+' AND LOADED='N'
UPDATE_RELIABLE_REFS=UPDATE JMS_MESSAGE_REFERENCE SET LOADED='Y' WHERE ORD BETWEEN ? AND ? AND CHANNELID=? AND RELIABLE='Y' AND STATE <> '+'
UPDATE_RELIABLE_REFS_NOT_LOADED=UPDATE JMS_MESSAGE_REFERENCE SET LOADED='N' WHERE CHANNELID=?
SELECT_MIN_ORDERING=SELECT MIN(ORD) FROM JMS_MESSAGE_REFERENCE WHERE CHANNELID=? AND STATE <> '+' AND LOADED = 'N'
DELETE_UNRELIABLE_REFS=DELETE FROM JMS_MESSAGE_REFERENCE WHERE RELIABLE = 'N'
CREATE_MESSAGE=CREATE TABLE JMS_MESSAGE (MESSAGEID INTEGER, RELIABLE CHAR(1) NULL, EXPIRATION INTEGER NULL, TIMESTAMP NUMERIC(20,0) NULL, PRIORITY INTEGER NULL, COREHEADERS IMAGE NULL, PAYLOAD IMAGE NULL, CHANNELCOUNT INTEGER NULL, TYPE INTEGER NULL, JMSTYPE VARCHAR(255) NULL, CORRELATIONID VARCHAR(255) NULL, CORRELATIONID_BYTES VARBINARY(254) NULL, DESTINATION_ID INTEGER NULL, REPLYTO_ID INTEGER NULL, JMSPROPERTIES IMAGE NULL, PRIMARY KEY (MESSAGEID))
LOAD_MESSAGES=SELECT MESSAGEID, RELIABLE, EXPIRATION, TIMESTAMP, PRIORITY, COREHEADERS, PAYLOAD, CHANNELCOUNT, TYPE, JMSTYPE, CORRELATIONID, CORRELATIONID_BYTES, DESTINATION_ID, REPLYTO_ID, JMSPROPERTIES FROM JMS_MESSAGE
INSERT_MESSAGE=INSERT INTO JMS_MESSAGE (MESSAGEID, RELIABLE, EXPIRATION, TIMESTAMP, PRIORITY, COREHEADERS, PAYLOAD, CHANNELCOUNT, TYPE, JMSTYPE, CORRELATIONID, CORRELATIONID_BYTES, DESTINATION_ID, REPLYTO_ID, JMSPROPERTIES) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
UPDATE_MESSAGE_CHANNELCOUNT=UPDATE JMS_MESSAGE SET CHANNELCOUNT=? WHERE MESSAGEID=?
DELETE_MESSAGE=DELETE FROM JMS_MESSAGE WHERE MESSAGEID=?
MESSAGEID_COLUMN=MESSAGEID
<!--
UPDATE_UNRELIABLE_CHANNELCOUNT=UPDATE JMS_MESSAGE M SET M.CHANNELCOUNT = M.CHANNELCOUNT - 1 WHERE M.MESSAGEID IN (SELECT MR.MESSAGEID FROM JMS_MESSAGE_REFERENCE MR WHERE MR.RELIABLE = 'N' AND MR.CHANNELID = ?)
-->
UPDATE_UNRELIABLE_CHANNELCOUNT=UPDATE JMS_MESSAGE SET CHANNELCOUNT = CHANNELCOUNT - 1 WHERE MESSAGEID IN (SELECT MR.MESSAGEID FROM JMS_MESSAGE_REFERENCE MR WHERE MR.RELIABLE = 'N' AND MR.CHANNELID = ?)
DELETE_UNREFFED_MESSAGES=DELETE FROM JMS_MESSAGE WHERE CHANNELCOUNT = 0
CREATE_TRANSACTION=CREATE TABLE JMS_TRANSACTION (TRANSACTIONID INTEGER, BRANCH_QUAL VARBINARY(254) NULL, FORMAT_ID INTEGER NULL, GLOBAL_TXID VARBINARY(254) NULL, PRIMARY KEY (TRANSACTIONID))
INSERT_TRANSACTION=INSERT INTO JMS_TRANSACTION (TRANSACTIONID, BRANCH_QUAL, FORMAT_ID, GLOBAL_TXID) VALUES(?, ?, ?, ?)
DELETE_TRANSACTION=DELETE FROM JMS_TRANSACTION WHERE TRANSACTIONID = ?
SELECT_PREPARED_TRANSACTIONS=SELECT TRANSACTIONID, BRANCH_QUAL, FORMAT_ID, GLOBAL_TXID FROM JMS_TRANSACTION
DELETE_ALL_TRANSACTIONS=DELETE FROM JMS_TRANSACTION
CREATE_COUNTER=CREATE TABLE JMS_COUNTER (NAME VARCHAR(255), NEXT_ID INTEGER NULL, PRIMARY KEY(NAME))
UPDATE_COUNTER=UPDATE JMS_COUNTER SET NEXT_ID = ? WHERE NAME=?
SELECT_COUNTER=SELECT NEXT_ID FROM JMS_COUNTER WHERE NAME=?
INSERT_COUNTER=INSERT INTO JMS_COUNTER (NAME, NEXT_ID) VALUES (?, ?)
DELETE_ALL_COUNTERS=DELETE FROM JMS_COUNTER
SELECT_ALL_CHANNELS=SELECT DISTINCT(CHANNELID) FROM JMS_MESSAGE_REFERENCE
]]>
500
<mbean code="org.jboss.jms.server.plugin.JDBCChannelMapper"
name="jboss.messaging:service=ChannelMapper"
xmbean-dd="xmdesc/JDBCChannelMapper-xmbean.xml">
jboss.jca:service=DataSourceBinding,name=DefaultDS
<depends optional-attribute-name="TransactionManager">jboss:service=TransactionManager
java:/DefaultDS
<![CDATA[
CREATE_USER_TABLE=CREATE TABLE JMS_USER (USERID VARCHAR(32) NOT NULL, PASSWD VARCHAR(32) NOT NULL, CLIENTID VARCHAR(128) NULL, PRIMARY KEY(USERID))
CREATE_ROLE_TABLE=CREATE TABLE JMS_ROLE (ROLEID VARCHAR(32) NOT NULL, USERID VARCHAR(32) NOT NULL, PRIMARY KEY(USERID, ROLEID))
SELECT_PRECONF_CLIENTID=SELECT CLIENTID FROM JMS_USER WHERE USERID=?
CREATE_MAPPING_TABLE=CREATE TABLE JMS_CHANNEL_MAPPING (ID INTEGER, TYPE CHAR(1) NULL, JMS_DEST_NAME VARCHAR(1024) NULL, JMS_SUB_NAME VARCHAR(1024) NULL, CLIENT_ID VARCHAR(128) NULL, SELECTOR VARCHAR(1024) NULL, NO_LOCAL CHAR(1) NULL, PRIMARY KEY(ID))
INSERT_MAPPING=INSERT INTO JMS_CHANNEL_MAPPING (ID, TYPE, JMS_DEST_NAME, JMS_SUB_NAME, CLIENT_ID, SELECTOR, NO_LOCAL) VALUES (?, ?, ?, ?, ?, ?, ?)
DELETE_MAPPING=DELETE FROM JMS_CHANNEL_MAPPING WHERE ID = ?
SELECT_ID_FOR_DESTINATION=SELECT ID FROM JMS_CHANNEL_MAPPING WHERE TYPE=? AND JMS_DEST_NAME=?
SELECT_DURABLE_SUB=SELECT JMS_DEST_NAME, ID, SELECTOR, NO_LOCAL FROM JMS_CHANNEL_MAPPING WHERE CLIENT_ID=? AND JMS_SUB_NAME=?
SELECT_SUBSCRIPTIONS_FOR_TOPIC=SELECT ID, CLIENT_ID, JMS_SUB_NAME, SELECTOR, NO_LOCAL FROM JMS_CHANNEL_MAPPING WHERE TYPE='D' AND JMS_DEST_NAME=?
]]>
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3966026#3966026
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3966026
19 years, 8 months
[JBoss Eclipse IDE (users)] - JBossIDE causing Eclipse to pause and do alot of disk IO/eat
by mazz@jboss.com
I've been noticing lately that once during an Eclipse session (that is, this happens one time after starting Eclipse), that Eclipse hangs for several minutes and I hear the drive cranking along with CPU usage going up.
I ran Eclipse with java.exe so I can hit CONTROL-BREAK in the console when this happens. The last time it happened, I found this thread as the probable culprit. Once the "hang" went away and Eclipse woke up and acted normally, this stack went away (its a thread in a thread pool, so the thread itself didn't go away, but the thread went idle at the same time I noticed Eclipse "woke" up).
Can someone talk about what JBoss IDE is doing here in this thread so I can figure out what I can do to stop this?
| "Worker-10" prio=6 tid=0x3a3365b0 nid=0x520 runnable [0x3b9de000..0x3b9dfae8]
| at java.util.zip.ZipFile.open(Native Method)
| at java.util.zip.ZipFile.<init>(ZipFile.java:203)
| at java.util.jar.JarFile.<init>(JarFile.java:132)
| at java.util.jar.JarFile.<init>(JarFile.java:97)
| at org.jboss.ide.eclipse.as.core.module.factory.ArchiveModuleFactory.supports(ArchiveModuleFactory.java:65)
| at org.jboss.ide.eclipse.as.core.module.factory.ArchiveModuleFactory.acceptAddition(ArchiveModuleFactory.java:33)
| at org.jboss.ide.eclipse.as.core.module.factory.JBossModuleFactory$1.visit(JBossModuleFactory.java:88)
| at org.eclipse.core.internal.resources.Resource$2.visit(Resource.java:105)
| at org.eclipse.core.internal.resources.Resource$1.visitElement(Resource.java:57)
| at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:81)
| at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
| at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
| at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
| at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
| at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
| at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
| at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
| at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
| at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
| at org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIterator.java:85)
| at org.eclipse.core.internal.watson.ElementTreeIterator.iterate(ElementTreeIterator.java:126)
| at org.eclipse.core.internal.resources.Resource.accept(Resource.java:67)
| at org.eclipse.core.internal.resources.Resource.accept(Resource.java:103)
| at org.eclipse.core.internal.resources.Resource.accept(Resource.java:87)
| at org.jboss.ide.eclipse.as.core.module.factory.JBossModuleFactory.cacheModules(JBossModuleFactory.java:86)
| at org.jboss.ide.eclipse.as.core.module.factory.JBossModuleFactory.getModules(JBossModuleFactory.java:66)
| at org.eclipse.wst.server.core.internal.ModuleFactory.getModules(ModuleFactory.java:133)
| at org.eclipse.wst.server.core.ServerUtil.getModules(ServerUtil.java:247)
| at org.eclipse.wst.server.core.ServerUtil.getModule(ServerUtil.java:47)
| at org.eclipse.wst.server.core.internal.ResourceManager.publishHandleProjectChange(ResourceManager.java:916)
| at org.eclipse.wst.server.core.internal.ResourceManager$1.visit(ResourceManager.java:110)
| at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:67)
| at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:76)
| at org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:48)
| at org.eclipse.wst.server.core.internal.ResourceManager$ServerResourceChangeListener.resourceChanged(ResourceManager.java:104)
| at org.eclipse.core.internal.events.NotificationManager$2.run(NotificationManager.java:280)
| at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
| at org.eclipse.core.internal.events.NotificationManager.notify(NotificationManager.java:274)
| at org.eclipse.core.internal.events.NotificationManager.broadcastChanges(NotificationManager.java:148)
| at org.eclipse.core.internal.resources.Workspace.broadcastPostChange(Workspace.java:256)
| at org.eclipse.core.internal.resources.Workspace.endOperation(Workspace.java:958)
| at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:45)
| at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58)
|
|
|
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3966025#3966025
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3966025
19 years, 8 months
[JBossWS] - Re: JSR 181 JBoss 4.0.4
by Lupson
I solved a few problems that others may encounter, so here goes:
1. Throwing Exceptions. Well - declaring a @WebMethod to throw an Exception or some user-defined Exception, extending Exception would cause the "org.jboss.ws.WSException" described in the first post. I got JBoss 4.0.4.GA to get past this by declaring "throws Throwable" instead. It works nicely.
2. Actually throwing a useful Exception. Im using a C# console application as test client since this project will have a ASP.NET / C# frontend. Error management needed to be handled using some kind of customized Exceptions since I use arbitrary objects as return types (various business objects). I took a quick shot at using a generic "MyResponse" class but that did not work out for various reasons. Ok, back to throwing "normal" Exceptions. This could be done, but every time, the C# client would only be able to access the "message" part of any exception, not giving me enough flexibility. I continued with various kinds of SOAP-like exceptions: SOAPException, SOAPFaultException from javax.xml.ws, SOAPFaultException javax.xml.rpc and so on, manually setting the Detail node, Actor, Code and similar stuff.
Nevertheless - each time the C# would only show the message. Accessing the Detail node would give the C# eq. of NullPointerException.
During all this time I noticed a "strange" thing in my JBoss server.log - a stacktrace was being printed for each Exception I threw - an EJBException - but I was not responsible for that stacktrace!
Suddenly I realized something - since the JSR-181 endpoint also is a stateless session EJB the fine SOAPException Im throwing might get wrapped by the EJB framework. Well - I turned off container managed transactions using:
@TransactionManagement( value=TransactionManagementType.BEAN)
Now it works as a charm! I can easily access the various parts of the SOAPException in the C# app.
Well - hopefully this little essay can be helpful to someone.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3966020#3966020
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3966020
19 years, 8 months
[Beginners Corner] - Simple SessionBean --- ClassCastException
by bronks
Hi!
I am using the JBossIDE 1.5.1 and JBossAS 4.04.
I have coded a simple SessionBean and a Servlet. Please take a look at the code below.
The deployment of the ejb.jar seems to be ok: [ProxyFactory] Bound EJB Home 'Hello' to jndi 'ejb/Hello'
When i am accessing the servlet i am getting an java.lang.ClassCastException in the servlet at line marked with ">>>>>>>".
I have spent 4 hour and can not find a mistake.
Please take a look at my code an tell me what is wrong.
Thanks
Bronks
package testProjekt;
|
| import java.rmi.RemoteException;
|
| import javax.ejb.EJBException;
| import javax.ejb.SessionBean;
| import javax.ejb.SessionContext;
|
| import javax.ejb.CreateException;
|
| /**
| * @ejb.bean name="Hello"
| * display-name="Name for Hello"
| * description="Description for Hello"
| * jndi-name="ejb/Hello"
| * type="Stateless"
| * view-type="remote"
| */
| public class HelloBean implements SessionBean {
|
| public HelloBean() {
| super();
| // TODO Auto-generated constructor stub
| }
|
| public void setSessionContext(SessionContext ctx)
| throws EJBException,
| RemoteException {
| // TODO Auto-generated method stub
|
| }
|
| public void ejbRemove() throws EJBException, RemoteException {
| // TODO Auto-generated method stub
|
| }
|
| public void ejbActivate() throws EJBException, RemoteException {
| // TODO Auto-generated method stub
|
| }
|
| public void ejbPassivate() throws EJBException, RemoteException {
| // TODO Auto-generated method stub
|
| }
|
| /**
| * Default create method
| *
| * @throws CreateException
| * @ejb.create-method
| */
| public void ejbCreate() throws CreateException {
| // TODO Auto-generated method stub
| }
|
| /**
| * Business method
| * @ejb.interface-method view-type="remote"
| * @generated
| */
| public String hello() {
| return new String("Hello ...!");
| }
| }
|
| package web;
|
| import java.io.IOException;
| import java.io.PrintWriter;
|
| import javax.naming.InitialContext;
| import javax.servlet.ServletConfig;
| import javax.servlet.ServletException;
| import javax.servlet.http.HttpServlet;
| import javax.servlet.http.HttpServletRequest;
| import javax.servlet.http.HttpServletResponse;
|
| import testProjekt.*;
|
|
| /**
| * @web.servlet
| * name="testservlet"
| * display-name="Test Servlet"
| * description="Servlet for testing"
| *
| * @web.servlet-mapping
| * url-pattern="/testservlet"
| *
| */
|
| public class TestServlet extends HttpServlet implements
| javax.servlet.Servlet{
|
|
|
| public TestServlet() {
| super();
| // TODO Auto-generated constructor stub
| }
|
| public void init(ServletConfig config) throws ServletException {
| super.init(config);
|
| }
|
| protected void doGet(HttpServletRequest req, HttpServletResponse resp)
| throws ServletException,
| IOException {
|
| PrintWriter out = resp.getWriter();
| out.println("Executing the servlet");
|
| try {
| InitialContext context = new InitialContext(System.getProperties());
| >>>>>>> HelloHome home = (HelloHome) context.lookup(HelloHome.JNDI_NAME);
|
| Hello bean = home.create();
| String testtext = bean.hello();
| out.println(testtext);
| }catch(Exception e){e.printStackTrace();}
| }
| }
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3966019#3966019
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3966019
19 years, 8 months