Hi Paul - if you're using log4j you can just set the following category
in your appender to debug:
<category name="com.ibatis">
<priority value="debug" />
</category>
It will log the sql and then on a subsequent line log any regular
parameters. If you use inline parameters ($value$) they will show up in
the sql.
Diran
Paul Carr wrote:
Hi all, is there a way to tell iBatis to log out the SQL and any
parameters upon throwing an SQLException ?
i.e.. instead of logging “select name from person where name = $1”;
make it log “select name from person where name = ‘Paul’;
Infact….how do you make it log out the SQL query string in the first
place?
-----Original Message-----
*From:* Alexander Sack [mailto:[EMAIL PROTECTED]
*Sent:* 07 April 2006 18:45
*To:* [email protected]
*Subject:* Re: iBatis within EAR files
The client? The client is in my.jar which is a bunch of EJBs plus a
class wrapping a DAO. The war file is in a separate deployment. It
looks up an EJB interface, calls it. The interfaces are shared in a
common library outside both WAR and EAR (global scope).
That eventually gets me inside my.jar. my.jar DAO wrapper classes
calles getResourceAsReader()"com/blah/blah)."
The ibatis libraries are part of the my.jar MANIFEST within the EAR.
The ibatis libraries are in the EAR under a lib directory (MANIFEST
has Class-Path entres lib/ibatis.jar ,etc.)..
The only way for me to get this to work is to use
Thread.currentThread().setContextClassLoader(myDAO.class.getClassLoader())
before calling the getResourceAsReader() but then for a common
typeHandler callback defined in an external library (with global
scope) is not found. I'm not even sure if I really should have to do this.
Thanks for the feedback,
-aps
On 4/7/06, *Jeff Butler* <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>> wrote:
What's the client? my.war? myejb.jar? Make sure that my.jar is in the
manifest classpath of the client.
I have the ibatis*.jar files in the EAR on WebSphere and have no
troubles - but the different module's classpaths do need to be setup
properly.
Jeff Butler
On 4/7/06, *Alexander Sack* <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]> > wrote:
Hello iBatis Folks,
I have this problem when using iBatis within in an EAR (I posted this
in the JBoss Forum but so far no solution):
my.ear
my.jar
my.jar/META-INF/MANIFEST.MF
lib/ibatis*.jar
my.jar/com/blah/blah/mapfile.xml
The MANIFEST.MF file has Class-Path: lib/ibatis*.jar etc. When the EAR
gets deployed, the getResourceReader() can not find the map files
within the my.jar file! It seems that getResourceReader("com/blah
/balh") can't find it in the current classpath. I noticed that the
iBatis Resource object is using the current thread's context
classloader which I'm not sure seems right to me for this scenario.
If I set the currentThread.setContextClassLoader() to my objects class
loader, it can then find the map files witin the JAR but then can't
find a typeHandler class in a common library outside the EAR (EARs are
scoped). So this isn't going to work for me.
Any clue on how to solve this or how I should load map files witin a
module in an EAR deployment? What's the best practices regarding
iBatis and EAR files?
Thanks!
-aps
--
"What lies behind us and what lies in front of us is of little concern
to what lies within us." -Ralph Waldo Emerson
--
"What lies behind us and what lies in front of us is of little concern
to what lies within us." -Ralph Waldo Emerson