Wednesday, April 15, 2009

Online XPath Tester

After looking for a quick online XPath Tester I decided to write my own.

This is an online xpath tool written in Javascript

Online XPath Tester

The following articles were helful in getting it running

Javascript Xpath tutorial


This article here is the Official Javascript guide to XPATH

These articles links to the Reference guides for XML. The  API for the XPath objects and the API for the w3c Xml objects

Not used here but useful nonetheless is a Javascript Reflection API. This article shows how to do it. I modified the code slightly to get it working

This article described

Friday, April 10, 2009

Weblogic Jms error.. "Peer Gone"

"It is likely that the remote side declared peer gone on this JVM"

This error had been causing me grief for a long time.

The problem was fixed by updating my etc hosts file on the client machine... (/windows/system32/drivers/etc/hosts on windows).

Some of our weblogic servers display the server name including domain name e.g. server.domain.com and some only display the server name (e.g. servername). By adding an entry for the target weblogic server in the etc/hosts the problem was fixed.

e.g.
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
127.0.0.1 localhost
192.168.1.10 servername servername.domain.com

Bea Articles on Oracle

When Oracle acquired BEa they began moving all the bea and weblogic sites into the oracle.com domain.

Problem of course is that a lot of good articles are referenced on the web to their old original Bea urls.

This page lists where the equivilent sections exist on the oracle site

Overview of migration -> http://wiki.oracle.com/page/Dev2Dev+%2F+Arch2Arch+Status+and+Migration+Update?t=anon

Dev2dev and arch2arch -> http://www.oracle.com/technology/pub/articles/dev2arch/index.html

Weblogic JMS rollback

I was getting the following error in a Weblogic 9.2 deployment.

####<10-apr-2009> <info> <ejb> <vmmiddleware11> <mwalsb11> <[ACTIVE] ExecuteThread: '11' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1239355884374> <bea-010213> <message-driven xid="BEA1-23F28F44E9B311BE176F(110581804),Status="Rolled" reason="weblogic.transaction.internal.AppSetRollbackOnlyException],numRepliesOwedMe="0,numRepliesOwedOthers="0,seconds" begin="0,seconds" left="60,XAServerResourceInfo[WLStore_MWALSBDomain_JDBCStore_MWALSB11]="(ServerResourceInfo[WLStore_MWALSBDomain_JDBCStore_MWALSB11]="(state="rolledback,assigned="MWALSB11),xar="WLStore_MWALSBDomain_JDBCStore_MWALSB1146900074,re-Registered" state="rolledback),OwnerTransactionManager="ServerTM[ServerCoordinatorDescriptor="(CoordinatorURL="MWALSB11+vmmiddleware11:7011+MWALSBDomain+t3+," xaresources="{WLStore_MWALSBDomain_JDBCStore_MWALSB11," nonxaresources="{})],CoordinatorURL="MWALSB11+vmmiddleware11:7011+MWALSBDomain+t3+).">

First steps are to get more informative error messages by enabling debugging for JTA

This is done by adding the following switches to weblogic on startup

-Dweblogic.debug.DebugJDBCJTA=true
-Dweblogic.log.StdoutSeverity="Debug"

This article give a list of other possible switches available on Weblogic
http://www.questtech.co.uk/index.php?option=com_content&view=article&id=163&Itemid=40