ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mark Bennett" <mark.benn...@ncmail.net>
Subject Can DAO calls be in a constructor...
Date Tue, 22 Feb 2005 21:49:31 GMT
Can DAO calls be in a constructor if it is an object created by a Complex
Property?

First I know this is risky because you might encounter recursion.  But if no
cycle is created, then is this possible at all?


  <resultMap id="juvenileResult" class="juvenile">
    <result property="someBean.myBean" column="MYCOLUMN"/>
  </resultMap>

class MyBean {
	private static ProfileService profileService =
ProfileService.getInstance();
	public MyBean() {
		// *** This will cause another iBatis call while other is still in
progress ***
		List list = profileService.getListOfSuff(1);
	}
}

Mark



<Feb 22, 2005 4:36:41 PM EST> <Error> <HTTP>
<[WebAppServletContext(5788681,NCJOIN,/NCJOIN)] Servlet failed with
Exception
com.ibatis.dao.client.DaoException: Failed to execute queryForObject - id
[getJuvenile], parameterObject [20210].  Cause:
com.ibatis.common.jdbc.exception.NestedSQLException:
--- The error occurred in ncjoin/persistence/sqlmapdao/sql/Profile.xml.
--- The error occurred while applying a result map.
--- Check the Profile.juvenileResult.
--- The error happened while setting a property on the result object.
--- Cause: COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver] CLI0125E
Function sequence error. SQLSTATE=HY010
Caused by: COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver] CLI0125E
Function sequence error. SQLSTATE=HY010
Caused by: com.ibatis.common.jdbc.exception.NestedSQLException:
--- The error occurred in ncjoin/persistence/sqlmapdao/sql/Profile.xml.
--- The error occurred while applying a result map.
--- Check the Profile.juvenileResult.
--- The error happened while setting a property on the result object.
--- Cause: COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver] CLI0125E
Function sequence error. SQLSTATE=HY010
Caused by: COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver] CLI0125E
Function sequence error. SQLSTATE=HY010
	at
com.ibatis.dao.client.template.SqlMapDaoTemplate.queryForObject(SqlMapDaoTem
plate.java:164)
	at
ncjoin.persistence.sqlmapdao.ProfileSqlMapDao.getJuvenile(ProfileSqlMapDao.j
ava:22)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.ibatis.dao.engine.impl.DaoProxy.invoke(DaoProxy.java:72)
	at $Proxy141.getJuvenile(Unknown Source)
	at ncjoin.service.ProfileService.getJuvenile(ProfileService.java:36)
	at
ncjoin.main.servlet.RequestProcessor.processActionPerform(RequestProcessor.j
ava:54)
	at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
	at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:263)
	at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:200)
	at
weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
ntext.java:2390)
	at
weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
:1959)
	at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
	at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)

Caused by:
com.ibatis.common.jdbc.exception.NestedSQLException:
--- The error occurred in ncjoin/persistence/sqlmapdao/sql/Profile.xml.
--- The error occurred while applying a result map.
--- Check the Profile.juvenileResult.
--- The error happened while setting a property on the result object.
--- Cause: COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver] CLI0125E
Function sequence error. SQLSTATE=HY010
Caused by: COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver] CLI0125E
Function sequence error. SQLSTATE=HY010
	at
com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQueryWith
Callback(GeneralStatement.java:180)
	at
com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQueryForO
bject(GeneralStatement.java:99)
	at
com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForObject(SqlMapEx
ecutorDelegate.java:561)
	at
com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForObject(SqlMapEx
ecutorDelegate.java:536)
	at
com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForObject(SqlMapSession
Impl.java:97)
	at
com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForObject(SqlMapClientIm
pl.java:69)
	at
com.ibatis.dao.client.template.SqlMapDaoTemplate.queryForObject(SqlMapDaoTem
plate.java:162)
	at
ncjoin.persistence.sqlmapdao.ProfileSqlMapDao.getJuvenile(ProfileSqlMapDao.j
ava:22)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.ibatis.dao.engine.impl.DaoProxy.invoke(DaoProxy.java:72)
	at $Proxy141.getJuvenile(Unknown Source)
	at ncjoin.service.ProfileService.getJuvenile(ProfileService.java:36)
	at
ncjoin.main.servlet.RequestProcessor.processActionPerform(RequestProcessor.j
ava:54)
	at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
	at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:263)
	at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:200)
	at
weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
ntext.java:2390)
	at
weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
:1959)
	at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
	at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)

Caused by:
COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver] CLI0125E  Function sequence
error. SQLSTATE=HY010
	at COM.ibm.db2.jdbc.app.SQLExceptionGenerator.throw_SQLException(Unknown
Source)
	at COM.ibm.db2.jdbc.app.SQLExceptionGenerator.throw_SQLException(Unknown
Source)
	at COM.ibm.db2.jdbc.app.SQLExceptionGenerator.check_return_code(Unknown
Source)
	at COM.ibm.db2.jdbc.app.DB2ResultSet.next(Unknown Source)
	at
com.ibatis.sqlmap.engine.execution.SqlExecutor.handleResults(SqlExecutor.jav
a:353)
	at
com.ibatis.sqlmap.engine.execution.SqlExecutor.executeQuery(SqlExecutor.java
:179)
	at
com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.sqlExecuteQuery(
GeneralStatement.java:200)
	at
com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQueryWith
Callback(GeneralStatement.java:168)
	at
com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQueryForO
bject(GeneralStatement.java:99)
	at
com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForObject(SqlMapEx
ecutorDelegate.java:561)
	at
com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForObject(SqlMapEx
ecutorDelegate.java:536)
	at
com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForObject(SqlMapSession
Impl.java:97)
	at
com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForObject(SqlMapClientIm
pl.java:69)
	at
com.ibatis.dao.client.template.SqlMapDaoTemplate.queryForObject(SqlMapDaoTem
plate.java:162)
	at
ncjoin.persistence.sqlmapdao.ProfileSqlMapDao.getJuvenile(ProfileSqlMapDao.j
ava:22)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.ibatis.dao.engine.impl.DaoProxy.invoke(DaoProxy.java:72)
	at $Proxy141.getJuvenile(Unknown Source)
	at ncjoin.service.ProfileService.getJuvenile(ProfileService.java:36)
	at
ncjoin.main.servlet.RequestProcessor.processActionPerform(RequestProcessor.j
ava:54)
	at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
	at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:263)
	at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:200)
	at
weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
ntext.java:2390)
	at
weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
:1959)
	at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
	at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
>



Mime
View raw message