Skip to content

Instantly share code, notes, and snippets.

final Iterator it = transactionService.iterator();
while (it.hasNext()){
final ObjectName tranObjectName = (ObjectName) it.next();
if (null != tranObjectName){
String signature[] = null;
Object params[] = null;
Object result = adminClient.invoke(tranObjectName,
"printableListOfTransactions", params, signature);
if (result != null){
if (result instanceof String[]){
final Set transactionService = adminClient.queryNames(new ObjectName
("WebSphere:type=TransactionService,*"), null);
RegisteredRes E WTRN0062E: An illegal attempt to use multiple resources that have only one-phase capability has occurred within a global transaction.
FFDC Exception:com.ibm.ws.Transaction.IllegalResourceIn2PCTransactionException SourceId:com.ibm.ws.Transaction.JTA.TransactionImpl.enlistResource ProbeId:1858 Reporter:com.ibm.ws.tx.jta.TransactionImpl@82d082d
com.ibm.ws.Transaction.IllegalResourceIn2PCTransactionException: Illegal attempt to enlist multiple 1PC XAResources
at com.ibm.ws.tx.jta.RegisteredResources.enlistResource(RegisteredResources.java:864)
at com.ibm.ws.tx.jta.TransactionImpl.enlistResource(TransactionImpl.java:1788)
at com.ibm.ws.tx.jta.TranManagerSet.enlistOnePhase(TranManagerSet.java:615)
at com.ibm.ejs.j2c.LocalTransactionWrapper.enlist(LocalTransactionWrapper.java:593)
at com.ibm.ejs.j2c.ConnectionManager.lazyEnlist(ConnectionManager.java:2231)
at com.ibm.ws.rsadapter.spi.WSRdbManagedConnectionImpl.lazyEnlist(WSRdbManagedConnectionImpl.java:2519)
at com.ibm.ws.rsadapter.jdbc.WSJ
@soapplied
soapplied / gist:5899230
Last active December 9, 2016 16:28
DB2 export DB tables
db2 connect to MYDB
db2 -x "select tabname from syscat.tables where TABSCHEMA='MYSCHEMA'
and type='T'" > tableNames
while read TABLE; do
db2 EXPORT TO ./exported/$TABLE.del OF DEL lobs to ./exported/lobs
lobfile $TABLE xml to ./exported/xml xmlfile $TABLE
modified by lobsinsepfiles xmlinsepfiles MESSAGES ./exported/$TABLE.txt
"SELECT * FROM MYSCHEMA.$TABLE"
done < tableNames
@soapplied
soapplied / gist:5877180
Last active December 19, 2015 01:39
SIBQueuedMessage getMessageContents
byte[] msgContents = (byte[]) server.invoke(obj, "getMessageData",
new Object[] { msg.getId(), new Integer(0x19000) }, new String[] {
"java.lang.String", "java.lang.Integer" });
StringBuffer sb = new StringBuffer();
sb.append("Contents of Message ").append(msg.getId()).append(":\r\n\r\n");
if (msgContents != null) {
int dataLength = msgContents.length;
sb.append("Data length = 0x").append(
Integer.toHexString(dataLength)).append(" (").append(
@soapplied
soapplied / gist:5877120
Last active December 19, 2015 01:38
SIBQueuedMessage printMessageDetails
SIBQueuedMessageDetail sqmd = (SIBQueuedMessageDetail) server.invoke(obj,
"getQueuedMessageDetail", new Object[] { msg.getId() },
new String[] { "java.lang.String" });
System.out.println("BusDiscriminator:" + sqmd.getBusDiscriminator());
System.out.println("BusPriority:" + sqmd.getBusPriority());
System.out.println("BusReliability:" + sqmd.getBusReliability());
System.out.println("BusTimeToLive:" + sqmd.getBusTimeToLive());
System.out.println("BusReplyDiscriminator:"+ sqmd.getBusReplyDiscriminator());
System.out.println("BusReplyPriority:" + sqmd.getBusReplyPriority());
System.out.println("BusSystemMessageId:" + sqmd.getBusSystemMessageId());
@soapplied
soapplied / gist:5877069
Last active December 19, 2015 01:38
Print SIBQueuedMessage attributes
for (int i = 0; i < msgs.length; i++) {
SIBQueuedMessage msg = (SIBQueuedMessage) msgs[i];
System.out.println("id:" + msg.getId() + ", name:"
+ msg.getName() + ", state:" + msg.getState()
+ ", transactionID:" + msg.getTransactionId()
+ ", type:" + msg.getType());
@soapplied
soapplied / gist:5877041
Last active December 19, 2015 01:38
SIBQueuePoint get messages
if (null != depth && depth > 0) {
System.out.println("Queue Name:" + name
+ " has queue depth:" + depth);
SIBQueuedMessage[] msgs = (SIBQueuedMessage[]) server.invoke(obj,
"getQueuedMessages", null, null);
@soapplied
soapplied / gist:5877005
Last active December 19, 2015 01:38
get SIBQueuePoint attributes
final Iterator it = queueNameSet.iterator();
while (it.hasNext()) {
final ObjectName obj = (ObjectName) it.next();
final String name = obj.getKeyProperty("name");
AttributeList attribList = server.getAttributes(obj,
new String[] { "depth", "state", "id",
"highMessageThreshold", "sendAllowed" });
Long depth = null;
String state = "";
String id = "";
@soapplied
soapplied / gist:5876974
Last active December 19, 2015 01:38
Get all SIBQueuePoints
for (Iterator i = sibMesSet.iterator(); i.hasNext();) {
final ObjectName meObj = (ObjectName) i.next();
final String meName = meObj.getKeyProperty("name");
final ObjectName queuePoints = new ObjectName(
"WebSphere:type=SIBQueuePoint,SIBMessagingEngine="
+ meName + ",*");
final Set queueNameSet = server.queryNames(queuePoints,null);