[JBoss AS7 Development] - using BatchBuilder for deploying services on startup
by Alexey Loubyansky
Alexey Loubyansky [http://community.jboss.org/people/alex.loubyansky%40jboss.com] created the discussion
"using BatchBuilder for deploying services on startup"
To view the discussion, visit: http://community.jboss.org/message/557918#557918
--------------------------------------------------------------
This is what we currently do, i.e. deployments listed in standalone/domain xml are added to BatchBuilder. BatchBuilder is supposed to treat services added to the batch as one deployment, i.e., as I understand, deploy all of them or none if at least one of the services failed.
We touched upon a question (in another thread) whether the server should fail to start if one of its deployments failed. It was decided that the error should be logged but the server continue deploying other services. In this case, we shouldn't use BatchBuilder during server start-up the way we do now.
Or perhaps the concept of BatchBuilder should be advanced and a few different implementations should be provided, e.g.
- if any of the deployments fail then fail the whole batch;
- if some specific of the deployments fail then fail the whole batch;
- each deployment isolated and has no affect on others (kind of a fake batch or no batch).
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/557918#557918]
Start a new discussion in JBoss AS7 Development at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&cont...]
15 years, 4 months
[JBoss ESB Development] - Sql-provider validation seems invalid
by Simon Toftegård Petersen
Simon Toftegård Petersen [http://community.jboss.org/people/simontp] created the discussion
"Sql-provider validation seems invalid"
To view the discussion, visit: http://community.jboss.org/message/557912#557912
--------------------------------------------------------------
Im using jboss-soa-p.4.3.0-cp02 and discovered something strange about sql-provider. Looking through the source code i found that it validates input through soa-work\esb\checkout\product\rosetta\src\org\jboss\soa\esb\listeners\config\XmlValidatorImpl.java with this schema: soa-work\esb\checkout\product\etc\schemas\xml\jbossesb-1.0.1.xsd
Where <xsd:element name="sql-message-filter"> is defined but only a fraction of the parameters that is actually available are there. Cause if you look in soa-work\esb\checkout\product\rosetta\src\org\jboss\soa\esb\listeners\gateway\SqlTableGatewayListener.java it has alot more parameters that it looks for:
/** SQL related */
Compiled list of possible configvalues(compiled from ListenerTagNames.java and JDBCEpr.java)
public static final String SQL_TABLE_NAME_TAG = "tableName";
public static final String MESSAGE_ID_COLUMN_TAG = "message_id_column";
public static final String DATA_COLUMN_TAG = "message_column";
public static final String STATUS_COLUMN_TAG = "status_column";
public static final String SQL_WHERE_CONDITION_TAG = "whereCondition";
public static final String ORDER_BY_TAG = "orderBy";
public static final String TIMESTAMP_COLUMN_TAG = "insert_timestamp_column";
public static final String POST_DEL_TAG = "postDelete";
public static final String ERROR_DEL_TAG = "errorDelete";
public static final String SQL_SELECT_FIELDS_TAG = "selectFields";
public static final String SQL_KEY_FIELDS_TAG = "keyFields";
public static final String SQL_IN_PROCESS_FIELD_TAG = "inProcessField";
public static final String SQL_IN_PROCESS_VALUES_TAG = "inProcessValues";
jbossesb-1.0.1.xsd(validation):
<xsd:attribute name="tablename" type="xsd:string"
<xsd:attribute name="message-id-column"
<xsd:attribute name="message-column"
<xsd:attribute name="status-column"
<xsd:attribute name="where-condition" use="optional"
<xsd:attribute name="order-by" use="optional"
<xsd:attribute name="insert-timestamp-column" use="optional"
<xsd:attribute default="true" name="post-delete"
<xsd:attribute default="true" name="error-delete"
As you can see 4 option are missing in the validation. So these can't be used at all. Is this a bug or is it working as intended?
Here is my jboss-esb.xml sql-provider just for reference:
<sql-provider name="GatewaySQLprovider"
url="jdbc:oracle:thin:@jdbc:oracle:thin:@url"
datasource="java:/HelloworldTxSqlDB">
<sql-bus busid="helloSQLChannel">
<sql-message-filter tablename="gateway_table"
status-column="STATUS_COL" order-by="DATA_COLUMN" where-condition="DATA_COLUMN like 'data%'"
message-column="DATA_COLUMN" post-delete="false" message-id-column="UNIQUE_ID"
insert-timestamp-column="TIMESTAMP_COL" error-delete="false" select-fields="DATA_COLUMN" />
</sql-bus>
</sql-provider>
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/557912#557912]
Start a new discussion in JBoss ESB Development at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&cont...]
15 years, 4 months
Re: [jboss-dev-forums] [JBoss AS7 Development] - Process Manager
by Kabir Khan
Kabir Khan [http://community.jboss.org/people/kabir.khan%40jboss.com] replied to the discussion
"Process Manager"
To view the discussion, visit: http://community.jboss.org/message/557886#557886
--------------------------------------------------------------
I've got the servers starting up with sockets instead of stdio now, but I am seeing some errors in the logs. They are exactly the same in my branch using sockets as they are in master which uses stdio, so maybe they are expected at this stage?
When running standalone.sh, I get this error in boot.log:
11:59:41,868 ERROR [server] Failed to activate deployment my-app.ear: java.lang.RuntimeException: Deployment root does not exist."/Users/kabir/sourcecontrol/jboss-as7/git/jboss-as/build/target/server/deployments/my-app.ear"
at org.jboss.as.model.ServerGroupDeploymentElement.activate(ServerGroupDeploymentElement.java:218)
at org.jboss.as.model.Standalone.activate(Standalone.java:464)
at org.jboss.as.server.AbstractServer.start(AbstractServer.java:100)
at org.jboss.as.server.StandaloneServer.start(StandaloneServer.java:68)
at org.jboss.as.server.Main.boot(Main.java:93)
at org.jboss.as.server.Main.main(Main.java:72)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_20]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [:1.6.0_20]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [:1.6.0_20]
at java.lang.reflect.Method.invoke(Method.java:597) [:1.6.0_20]
at org.jboss.modules.Module.run(Module.java:373) [jboss-modules.jar:1.0.0.Beta3]
at org.jboss.modules.Main.main(Main.java:171) [jboss-modules.jar:1.0.0.Beta3]
11:59:41,871 INFO [model] Activating server group deployment: my-war.ear:22cfd207b9b90e0014a4
11:59:41,872 ERROR [server] Failed to activate deployment my-war.ear: java.lang.RuntimeException: Deployment root does not exist."/Users/kabir/sourcecontrol/jboss-as7/git/jboss-as/build/target/server/deployments/my-war.ear"
at org.jboss.as.model.ServerGroupDeploymentElement.activate(ServerGroupDeploymentElement.java:218)
at org.jboss.as.model.Standalone.activate(Standalone.java:464)
at org.jboss.as.server.AbstractServer.start(AbstractServer.java:100)
at org.jboss.as.server.StandaloneServer.start(StandaloneServer.java:68)
at org.jboss.as.server.Main.boot(Main.java:93)
at org.jboss.as.server.Main.main(Main.java:72)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_20]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [:1.6.0_20]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [:1.6.0_20]
at java.lang.reflect.Method.invoke(Method.java:597) [:1.6.0_20]
at org.jboss.modules.Module.run(Module.java:373) [jboss-modules.jar:1.0.0.Beta3]
at org.jboss.modules.Main.main(Main.java:171) [jboss-modules.jar:1.0.0.Beta3]
11:59:41,874 INFO [model] Activating server group deployment: my-ejb.jar:7de777924ef61549b1af
11:59:41,874 ERROR [server] Failed to activate deployment my-ejb.jar: java.lang.RuntimeException: Deployment root does not exist."/Users/kabir/sourcecontrol/jboss-as7/git/jboss-as/build/target/server/deployments/my-ejb.jar"
at org.jboss.as.model.ServerGroupDeploymentElement.activate(ServerGroupDeploymentElement.java:218)
at org.jboss.as.model.Standalone.activate(Standalone.java:464)
at org.jboss.as.server.AbstractServer.start(AbstractServer.java:100)
at org.jboss.as.server.StandaloneServer.start(StandaloneServer.java:68)
at org.jboss.as.server.Main.boot(Main.java:93)
at org.jboss.as.server.Main.main(Main.java:72)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_20]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [:1.6.0_20]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [:1.6.0_20]
at java.lang.reflect.Method.invoke(Method.java:597) [:1.6.0_20]
at org.jboss.modules.Module.run(Module.java:373) [jboss-modules.jar:1.0.0.Beta3]
at org.jboss.modules.Main.main(Main.java:171) [jboss-modules.jar:1.0.0.Beta3]
For run.sh I get this error in server-one/boot.log (and similar for server-two):
11:59:57,844 INFO [server] Server Available to start
11:59:57,959 ERROR [server] Caught exception handling message from ServerManager: java.lang.RuntimeException: Failed to read server command
at org.jboss.as.server.MessageHandler.handleMessage(MessageHandler.java:67)
at org.jboss.as.server.ServerCommunicationHandler$Controller.run(ServerCommunicationHandler.java:202)
at java.lang.Thread.run(Thread.java:637) [:1.6.0_20]
Caused by: java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to java.lang.String
at org.jboss.marshalling.ModularClassTable.readClass(ModularClassTable.java:70)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadClassDescriptor(RiverUnmarshaller.java:816)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadNewObject(RiverUnmarshaller.java:1144)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:272)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:209)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadNestedObject(RiverUnmarshaller.java:165)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:671)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:209)
at org.jboss.marshalling.river.RiverUnmarshaller.readFields(RiverUnmarshaller.java:1615)
at org.jboss.marshalling.river.RiverUnmarshaller.doInitSerializable(RiverUnmarshaller.java:1531)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadNewObject(RiverUnmarshaller.java:1175)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:272)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:209)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadMapObject(RiverUnmarshaller.java:195)
at org.jboss.marshalling.river.RiverUnmarshaller.readMapData(RiverUnmarshaller.java:745)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:671)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:209)
at org.jboss.marshalling.river.RiverUnmarshaller.readFields(RiverUnmarshaller.java:1615)
at org.jboss.marshalling.river.RiverUnmarshaller.doInitSerializable(RiverUnmarshaller.java:1531)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadNewObject(RiverUnmarshaller.java:1175)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:272)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:209)
at org.jboss.marshalling.river.RiverUnmarshaller.readFields(RiverUnmarshaller.java:1615)
at org.jboss.marshalling.river.RiverUnmarshaller.doInitSerializable(RiverUnmarshaller.java:1531)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadNewObject(RiverUnmarshaller.java:1175)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:272)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:209)
at org.jboss.marshalling.river.RiverUnmarshaller.readFields(RiverUnmarshaller.java:1615)
at org.jboss.marshalling.river.RiverUnmarshaller.doInitSerializable(RiverUnmarshaller.java:1531)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadNewObject(RiverUnmarshaller.java:1175)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:272)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:209)
at org.jboss.marshalling.river.RiverUnmarshaller.readFields(RiverUnmarshaller.java:1615)
at org.jboss.marshalling.river.RiverUnmarshaller.doInitSerializable(RiverUnmarshaller.java:1531)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadNewObject(RiverUnmarshaller.java:1175)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:272)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:209)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadCollectionObject(RiverUnmarshaller.java:180)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObjectArray(RiverUnmarshaller.java:1440)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadArray(RiverUnmarshaller.java:1479)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:326)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:209)
at org.jboss.marshalling.river.RiverUnmarshaller.readFields(RiverUnmarshaller.java:1615)
at org.jboss.marshalling.river.RiverUnmarshaller.doInitSerializable(RiverUnmarshaller.java:1531)
at org.jboss.marshalling.river.RiverUnmarshaller.doInitSerializable(RiverUnmarshaller.java:1495)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadNewObject(RiverUnmarshaller.java:1175)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:272)
at org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:209)
at org.jboss.marshalling.AbstractObjectInput.readObject(AbstractObjectInput.java:72)
at org.jboss.as.server.MessageHandler.readServerCommand(MessageHandler.java:93)
at org.jboss.as.server.MessageHandler.handleMessage(MessageHandler.java:65)
... 2 more
Caused by: an exception which occurred:
in object of type java.util.TreeMap comparator
in field subsystems
in object of type org.jboss.as.model.ProfileElement
in map value at index [249] of size [2]
in field profiles
in object of type org.jboss.as.model.Domain
in field this$0
in object of type org.jboss.as.model.Domain$7
in field includedProfileResolver
in object of type org.jboss.as.model.ProfileElement
in field profile
in object of type org.jboss.as.model.Standalone
in element at index [0] of size [1]
in field args
in object of type org.jboss.as.server.manager.ServerCommand
This seems to be in response to the START server message command which passes through the Standalone element.
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/557886#557886]
Start a new discussion in JBoss AS7 Development at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&cont...]
15 years, 4 months
Re: [jboss-dev-forums] [jBPM Development] - about logging
by HuiSheng Xu
HuiSheng Xu [http://community.jboss.org/people/rebody] replied to the discussion
"about logging"
To view the discussion, visit: http://community.jboss.org/message/557785#557785
--------------------------------------------------------------
Hi Michael,
Thank you for the link. I want say the reason why I didn't want to remove the log layer of jbpm4 is just don't want to do these switch works.
There is no doubt that slf4j is perfect abstract layer for framework. But if we decide to use it to replace our logging layer. it is means that we should do lots of works on it.
On the other hand, many years ago, we just believe log4j is perfect enough, but now the better layer - slf4j, become more popular. If sometimes later, there is another better framework appears, should we cost time to switch on it? Do you really have the requirement to get from slf4j? By now at least, I don't think it is neccessary. So I want to leave log layer as it is right now.
Thank you for your reply.
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/557785#557785]
Start a new discussion in jBPM Development at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&cont...]
15 years, 4 months