hello all,
[sorry for the length, i wanted to be complete.] i hope some brave soul can help me
with this. i have been trying to get this to work all day. i have about 4 or 5 partial
examples of "code" here in front of me gathered from various sources (xdoclet
site/mail list, other websites, etc). none of them are complete and evidently don't
provide me with enough information to make my code usable.
could someone just quickly look over the code below and tell me if it looks alright?
Thanks!
Jason
i am using jboss 3.0.7, mysql 4.0.x, eclipse 2.1, lomboz 2.1.1 (xdoclet 1.2b4 is on
the class file names)
i have two DB tables... job and task. (NOTE: all primary keys (pk & fk) are GUIDs).
One Job can contain many tasks. so there is a 1..N relationship (and i have tried to
code it so it is unidirectional, i did want bidirectional but i couldn't get that to
work either).
CREATE TABLE `job` (
`jobpk` varchar(32) NOT NULL default '',
....other fields....
PRIMARY KEY (`jobpk`),
KEY `index_jobpk` (`jobpk`),
) TYPE=InnoDB;
CREATE TABLE `task` (
`tskpk` varchar(32) NOT NULL default '',
`tskfk_jobpk` varchar(32) NOT NULL default '',
....other fields....
PRIMARY KEY (`tskpk`),
KEY `index_tskpk` (`tskpk`),
KEY `index_tskfk_jobpk` (`tskfk_jobpk`)
) TYPE=InnoDB;
the current problem that i am getting is that jboss complains as it creates the task
table (job table is created correctly)...
23:21:00,994 WARN [ServiceController] Problem starting service
jboss.j2ee:jndiName=LogBean,service=EJB
org.jboss.deployment.DeploymentException: Error while creating table; - nested
throwable: (java.sql.SQLException: Invalid argument value, message from server:
"Duplicate column name 'tskfk_jobpk'")
and if i create the tables and then use the CMPs to enter data into them, the Job is
placed into the job table, but creating tasks gives the following error message...
23:31:55,365 ERROR [Task] Could not create entity
java.sql.SQLException: General error, message from server: "Column 'tskfk_jobpk'
specified twice"
full stack traces at the end of this email....
JobBean.java (relavent parts)
******************************************************************************************************
/**
* @ejb.bean
* name="Job"
* jndi-name="JobBean"
* type="CMP"
* primkey-field="jobpk"
* schema="job"
* cmp-version="2.x"
*
* @ejb.pk
* generate="false"
*
* @ejb.value-object
* name="Job"
* match="*"
*
* @ejb.value-object
* name="JobList"
* match="JobList"
*
* @ejb.persistence
* table-name="job"
*
* @jboss.persistence
* datasource="java:/dr_DS"
* datasource-mapping="mySQL"
* create-table="true"
* remove-table="false"
* read-only="false"
* pk-constraint="true"
* table-name="job"
*
* @ejb.finder
* query="SELECT OBJECT(a) FROM mySchema as a"
* signature="java.util.Collection findAll()"
*
* @ejb.util
* generate="physical"
*
**/
public abstract class JobBean implements EntityBean
{
/**
* The ejbCreate method.
*
* @ejb.create-method
*/
public java.lang.String ejbCreate(DRProperty property, Date startDateOrig) throws
javax.ejb.CreateException
{
// EJB 2.0 spec says return null for CMP ejbCreate methods.
// YOU MUST INITIALIZE THE FIELDS FOR THE BEAN HERE.
// setMyField("Something");
this.setJobpk(JobUtil.generateGUID(this));
...other code here...
return null;
}
/**
* Returns a JobVO
*
* @return the JobVO
*
* @ejb.interface-method
* view-type="both"
*/
public abstract JobVO getJobVO();
/**
* Sets the JobVO
*
* @param JobVO the new JobVO
*
* @ejb.interface-method
* view-type="both"
*/
public abstract void setJobVO(JobVO jobVO);
/**
* @ejb.interface-method
* view-type="both"
*
* @ejb.value-object
* compose="com.csi.dataretriever.taskmaster.ejb.TaskVO"
* compose-name="Task"
* members="com.csi.dataretriever.taskmaster.ejb.TaskLocal"
* members-name="TaskVO"
* relation="external"
* type="Collection"
*
* @ejb.relation
* name="job-task"
* role-name="job-has-tasks"
* target-mulitple="no"
* target-role-name="task-in-job"
* target-ejb="Task"
*
* @jboss.target-relation
* related-pk-field="jobpk"
* fk-column="tskfk_jobpk"
*/
public abstract Collection getTasks();
/**
* @ejb.interface-method
* view-type="both"
*/
public abstract void setTasks();
/**
* The container invokes this method immediately after it calls ejbCreate.
*
*/
public void ejbPostCreate() throws javax.ejb.CreateException
{
}
/**
* Returns the jobpk
* @return the jobpk
*
* @ejb.persistent-field
* @ejb.persistence
* column-name="jobpk"
* sql-type="VARCHAR"
* @ejb.pk-field
* @ejb.interface-method
* @ejb.value-object
* match="JobList"
*/
public abstract java.lang.String getJobpk();
/**
* Sets the jobpk
*
* @param java.lang.String the new jobpk value
*
* @ejb.interface-method
*/
public abstract void setJobpk(java.lang.String jobpk);
....other code....
TaskBean.java (relavent parts)
******************************************************************************************************
/**
* @ejb.bean
* name="Task"
* jndi-name="TaskBean"
* type="CMP"
* primkey-field="tskpk"
* schema="mySchema"
* cmp-version="2.x"
*
* @ejb.persistence
* table-name="task"
*
* @ejb.pk
* generate="false"
*
* @ejb.value-object
* name="Task"
* match="*"
*
* @ejb.persistence
* table-name="task"
*
* @jboss.persistence
* datasource="java:/dr_DS"
* datasource-mapping="mySQL"
* create-table="true"
* remove-table="false"
* read-only="false"
* pk-constraint="true"
* table-name="task"
*
* @ejb.finder
* query="SELECT OBJECT(a) FROM mySchema as a"
* signature="java.util.Collection findAll()"
*
* @ejb.util
* generate="physical"
*
**/
public abstract class TaskBean implements EntityBean
{
/**
* The ejbCreate method.
*
* @ejb.create-method
*/
public java.lang.String ejbCreate(DRProperty property) throws
javax.ejb.CreateException
{
// EJB 2.0 spec says return null for CMP ejbCreate methods.
// YOU MUST INITIALIZE THE FIELDS FOR THE BEAN HERE.
// setMyField("Something");
this.setTskpk(TaskUtil.generateGUID(this));
...other code here....
return null;
}
/**
* The ejbCreate method.
*
* @ejb.create-method
*/
public java.lang.String ejbCreate(TaskVO taskVO) throws javax.ejb.CreateException
{
this.setTaskVO(taskVO);
return null;
}
/**
* Returns a TaskVO
*
* @return the TaskVO
*
* @ejb.interface-method
* view-type="both"
*/
public abstract TaskVO getTaskVO();
/**
* Sets the TaskVO
*
* @param TaskVO the new TaskVO
*
* @ejb.interface-method
* view-type="both"
*/
public abstract void setTaskVO(TaskVO taskVO);
/**
* The container invokes this method immediately after it calls ejbCreate.
*
*/
public void ejbPostCreate() throws javax.ejb.CreateException
{
}
/**
* Returns the tskpk
* @return the tskpk
*
* @ejb.persistent-field
* @ejb.persistence
* column-name="tskpk"
* sql-type="varchar"
* @ejb.pk-field
* @ejb.interface-method
*/
public abstract java.lang.String getTskpk();
/**
* Sets the tskpk
*
* @param java.lang.String the new tskpk value
*
* @ejb.interface-method
*/
public abstract void setTskpk(java.lang.String tskpk);
/**
* Returns the tskfk_jobpk
* @return the tskfk_jobpk
*
* @ejb.persistent-field
* @ejb.persistence
* column-name="tskfk_jobpk"
* sql-type="varchar"
*
* @ejb.interface-method
*/
public abstract java.lang.String getTskfk_jobpk();
/**
* Sets the tskfk_jobpk
*
* @param java.lang.String the new tskfk_jobpk value
*
* @ ejb.interface-method
*/
public abstract void setTskfk_jobpk(java.lang.String tskfk_jobpk);
....other code....
Stack Trace (when creating tables)
******************************************************************************************************
23:21:00,644 INFO [Job] Created table 'job' successfully.
23:21:00,994 WARN [ServiceController] Problem starting service
jboss.j2ee:jndiName=LogBean,service=EJB
org.jboss.deployment.DeploymentException: Error while creating table; - nested
throwable: (java.sql.SQLException: Invalid argument value, message from server:
"Duplicate column name 'tskfk_jobpk'")
at
org.jboss.ejb.plugins.cmp.jdbc.JDBCStartCommand.createTable(JDBCStartCommand.java:175)
at
org.jboss.ejb.plugins.cmp.jdbc.JDBCStartCommand.execute(JDBCStartCommand.java:84)
at
org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.startStoreManager(JDBCStoreManager.java:457)
at
org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.start(JDBCStoreManager.java:369)
at
org.jboss.ejb.plugins.CMPPersistenceManager.start(CMPPersistenceManager.java:198)
at org.jboss.ejb.EntityContainer.start(EntityContainer.java:376)
at org.jboss.ejb.Container.invoke(Container.java:782)
at org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:1058)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:517)
at
org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:1003)
at $Proxy4.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:413)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at
org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:517)
at org.jboss.util.jmx.MBeanProxy.invoke(MBeanProxy.java:174)
at $Proxy20.start(Unknown Source)
at org.jboss.ejb.EjbModule.startService(EjbModule.java:404)
at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:165)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at
org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:517)
at
org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:1003)
at $Proxy4.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:413)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at
org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:517)
at org.jboss.util.jmx.MBeanProxy.invoke(MBeanProxy.java:174)
at $Proxy13.start(Unknown Source)
at org.jboss.ejb.EJBDeployer.start(EJBDeployer.java:395)
at org.jboss.deployment.MainDeployer.start(MainDeployer.java:814)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:627)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:591)
at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at
org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:517)
at org.jboss.util.jmx.MBeanProxy.invoke(MBeanProxy.java:174)
at $Proxy3.deploy(Unknown Source)
at
org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:435)
at
org.jboss.deployment.scanner.URLDeploymentScanner.scanDirectory(URLDeploymentScanner.java:656)
at
org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:507)
at
org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:266)
at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:165)
at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at
org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:517)
at
org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:1003)
at $Proxy0.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:413)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at
org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:517)
at org.jboss.util.jmx.MBeanProxy.invoke(MBeanProxy.java:174)
at $Proxy2.start(Unknown Source)
at org.jboss.deployment.SARDeployer.start(SARDeployer.java:232)
at org.jboss.deployment.MainDeployer.start(MainDeployer.java:814)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:627)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:591)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:575)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at
org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:517)
at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:324)
at org.jboss.system.server.ServerImpl.start(ServerImpl.java:221)
at org.jboss.Main.boot(Main.java:148)
at org.jboss.Main$1.run(Main.java:381)
at java.lang.Thread.run(Thread.java:534)
Caused by: java.sql.SQLException: Invalid argument value, message from server:
"Duplicate column name 'tskfk_jobpk'"
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:1651)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:889)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:956)
at com.mysql.jdbc.MysqlIO.sqlQuery(MysqlIO.java:928)
at com.mysql.jdbc.Connection.execSQL(Connection.java:1871)
at com.mysql.jdbc.Connection.execSQL(Connection.java:1805)
at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1231)
at
org.jboss.resource.adapter.jdbc.WrappedStatement.executeUpdate(WrappedStatement.java:231)
at
org.jboss.ejb.plugins.cmp.jdbc.JDBCStartCommand.createTable(JDBCStartCommand.java:166)
... 83 more
Stack Trace (when entering data into already created tables)
******************************************************************************************************
23:31:55,365 ERROR [Task] Could not create entity
java.sql.SQLException: General error, message from server: "Column 'tskfk_jobpk'
specified twice"
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:1651)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:889)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:956)
at com.mysql.jdbc.Connection.execSQL(Connection.java:1874)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1700)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1569)
at
org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:308)
at
org.jboss.ejb.plugins.cmp.jdbc.JDBCCreateEntityCommand.insertEntity(JDBCCreateEntityCommand.java:196)
at
org.jboss.ejb.plugins.cmp.jdbc.JDBCCreateEntityCommand.execute(JDBCCreateEntityCommand.java:131)
at
org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.createEntity(JDBCStoreManager.java:527)
at
org.jboss.ejb.plugins.CMPPersistenceManager.createEntity(CMPPersistenceManager.java:253)
at
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.createEntity(CachedConnectionInterceptor.java:270)
at org.jboss.ejb.EntityContainer.createLocalHome(EntityContainer.java:580)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at
org.jboss.ejb.EntityContainer$ContainerInterceptor.invokeHome(EntityContainer.java:1119)
at
org.jboss.ejb.plugins.AbstractInterceptor.invokeHome(AbstractInterceptor.java:73)
at
org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invokeHome(EntitySynchronizationInterceptor.java:207)
at
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invokeHome(CachedConnectionInterceptor.java:215)
at
org.jboss.ejb.plugins.AbstractInterceptor.invokeHome(AbstractInterceptor.java:73)
at
org.jboss.ejb.plugins.EntityInstanceInterceptor.invokeHome(EntityInstanceInterceptor.java:91)
at
org.jboss.ejb.plugins.EntityLockInterceptor.invokeHome(EntityLockInterceptor.java:79)
at
org.jboss.ejb.plugins.EntityCreationInterceptor.invokeHome(EntityCreationInterceptor.java:44)
at
org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:111)
at
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:237)
at org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT.java:68)
at
org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityInterceptor.java:105)
at org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:133)
at org.jboss.ejb.EntityContainer.invokeHome(EntityContainer.java:487)
at
org.jboss.ejb.plugins.local.BaseLocalContainerInvoker.invokeHome(BaseLocalContainerInvoker.java:230)
at org.jboss.ejb.plugins.local.LocalHomeProxy.invoke(LocalHomeProxy.java:110)
at $Proxy29.create(Unknown Source)
at org.apache.jsp.index_jsp._jspService(index_jsp.java:254)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:210)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at
org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:509)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)
at java.lang.Thread.run(Thread.java:534)����^�����)�{(��[�8b�A�zE���&z�
y�!y�ޞm���)��r����]��^���f��)��+-����n����l���q���z�m��?�X���(��~��zw��X�����b��?����n��