Can you make sure that com.ibm.db2.jcc.DB2XADataSource::setReadOnly()/getReadOnly() exists?
The IBM docs shows that it exists but can you confirm if there are setter getter methods for it too ?
http://publib.boulder.ibm.com/infocenter/db2luw/v8/index.jsp?topic=/com.ibm.db2.udb.doc/ad/rjvdsprp.htm
Also you could try setting this in xa-datasource/local-tx-datasource?
<connection-property name="connectionProperties">readOnly=true</connection-property>
Let us know if this works.