PlanetJava
Custom Search

java-open-symphony-devel
[Top] [All Lists]

Re: socket write error using remote Quartz Job Scheduler

Subject: Re: socket write error using remote Quartz Job Scheduler
Date: Mon, 03 Mar 2003 10:10:14 +0100
Patrick,
I cannot reproduce this anymore with the latest CVS version of osworkflow 
2.5.0, the problem seams to have gone. I am using Quartz 1.0.5 but also had the 
problem with Quartz 1.0.4.
Using the com.opensymphony.workflow.util.ScheduleJob with an external Quartz 
Scheduler works fine, but  I have to manually set the JobDetail.durability 
variable to "true" otherwise I get an exception: "Jobs added with no trigger 
must be durable".
Regards
Hubert
1,170 ERROR [ScheduleJob] Error scheduling job
rtz.SchedulerException: Jobs added with no trigger must be durable.
 at org.quartz.core.QuartzScheduler.addJob(QuartzScheduler.java:539)
 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 sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:261)
 at sun.rmi.transport.Transport$1.run(Transport.java:148)
 at java.security.AccessController.doPrivileged(Native Method)
 at sun.rmi.transport.Transport.serviceCall(Transport.java:144)
 at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
 at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
 at java.lang.Thread.run(Thread.java:536)
 at 
sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:247)
 at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:223)
 at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:133)
 at org.quartz.core.QuartzScheduler_Stub.addJob(Unknown Source)
 at org.quartz.impl.RemoteScheduler.addJob(RemoteScheduler.java:315)
 at com.opensymphony.workflow.util.ScheduleJob.execute(ScheduleJob.java:227)
>>> "Patrick Lightbody" <[email protected]> 03/03/03 08:23am >>>
Hubert,
This probably should go on the Quartz mailing list (include the calling code
in the JobScheduler). Most likely it is due to an improper Quartz
configuration. Are you using the latest version of Quartz (1.0.5)?
-Pat
----- Original Message -----
From: "Hubert Felber" <[email protected]>
To: <[email protected]>
Sent: Tuesday, February 25, 2003 7:52 AM
Subject: [Opensymphony-developers] socket write error using remote Quartz
Job Scheduler
> Hi,
>
> I have a problem using an external Quartz Job Scheduler from within the
workflow example.xml. The example is running in JBoss 3.2.0beta3 using
GLUE-STD 3.2.3, osworkflow version is 2.1.0.
> The remote scheduler can succesfully be started (<arg
name="schedulerStart">true</arg>) but then I get a socket write error as
shown below. Backtrace and Quartz properties for server and client are at
bottom.
> Does anybody have idea what is going wrong here?
>
>
>
> Another problem: I cannot not publish
"com.opensymphony.workflow.ejb.EJBWorkflow" for use with glue but I can
publish with my own class, which is in the same package. I get the following
message:
>
> 16:44:08,913 INFO  [STDOUT] [DEPLOYMENT] webapp: publishing web service on
path 'oswf'
> 16:44:08,975 FATAL [EJBWorkflow] javax.naming.NameNotFoundException:
Workflow not bound
> 16:44:08,991 INFO  [STDOUT] [ERROR] webapp: unable to start service on
path 'oswf' due to java.lang.RuntimeException: Could not get a handle on the
workflow EJB: Workflow not bound
> 16:44:08,991 INFO  [STDOUT] [DEPLOYMENT] webapp: publishing web service on
path 'system\application'
> 16:44:09,100 INFO  [jbossweb] successfully deployed
file:/C:/jboss/jboss-3.2.0beta3/server/opensymphony/tmp/deploy/server/opensy
mphony/deploy/osworkflow_example.war/31.osworkflow_example.war to
/osworkflow_example
>
> What do I miss here?
>
> Thank you
> Hubert
>
>
>
>
> Backtrace and Quartz properties for server and client:
>
> 16:06:14,638 INFO  [ScheduleJob] Starting Quartz Job Scheduler
> 16:06:14,716 ERROR [ScheduleJob] Error scheduling job
> org.quartz.SchedulerException: Error communicating with remote scheduler.
[See nested exception: java.rmi.MarshalException: error marshalling
arguments; nested exception is:
>         java.net.SocketException: Software caused connection abort: socket
write error]
>         at
org.quartz.impl.RemoteScheduler.scheduleJob(RemoteScheduler.java:286)
>         at
com.opensymphony.workflow.util.ScheduleJob.execute(ScheduleJob.java:187)
>         at
com.opensymphony.workflow.AbstractWorkflow.executeFunction(AbstractWorkflow.
java:869)
>         at
com.opensymphony.workflow.AbstractWorkflow.transitionWorkflow(AbstractWorkfl
ow.java:568)
>         at
com.opensymphony.workflow.AbstractWorkflow.doAction(AbstractWorkflow.java:42
2)
>         at org.apache.jsp.test_jsp._jspService(test_jsp.java:60)
>         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:2
04)
>         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.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:360)
>         at
org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandl
er.java:272)
>         at
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:550)
>         at org.mortbay.http.HttpContext.handle(HttpContext.java:1655)
>         at
org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext
.java:542)
>         at org.mortbay.http.HttpContext.handle(HttpContext.java:1605)
>         at org.mortbay.http.HttpServer.service(HttpServer.java:862)
>         at org.jboss.jetty.Jetty.service(Jetty.java:497)
>         at
org.mortbay.http.HttpConnection.service(HttpConnection.java:752)
>         at
org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:916)
>         at org.mortbay.http.HttpConnection.handle(HttpConnection.java:769)
>         at
org.mortbay.http.SocketListener.handleConnection(SocketListener.java:202)
>         at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289)
>         at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:455)
> * Nested Exception (Underlying Cause) ---------------
> java.rmi.MarshalException: error marshalling arguments; nested exception
is:
>         java.net.SocketException: Software caused connection abort: socket
write error
>         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:129)
>         at org.quartz.core.QuartzScheduler_Stub.scheduleJob(Unknown
Source)
>         at
org.quartz.impl.RemoteScheduler.scheduleJob(RemoteScheduler.java:284)
>         at
com.opensymphony.workflow.util.ScheduleJob.execute(ScheduleJob.java:187)
>         at
com.opensymphony.workflow.AbstractWorkflow.executeFunction(AbstractWorkflow.
java:869)
>         at
com.opensymphowPLOYMENT] webapp: publishing 
webny.workflow.AbstractWorkflow.transitionWorkflow(AbstractWorkfl
ow.java:568)
>         at
com.opensymphony.workflow.AbstractWorkflow.doAction(AbstractWorkflow.java:42
2)
>         at org.apache.jsp.test_jsp._jspService(test_jsp.java:60)
>         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:2
04)
>         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.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:360)
>         at
org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandl
er.java:272)
>         at
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:550)
>         at org.mortbay.http.HttpContext.handle(HttpContext.java:1655)
>         at
org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext
.java:542)
>         at org.mortbay.http.HttpContext.handle(HttpContext.java:1605)
>         at org.mortbay.http.HttpServer.service(HttpServer.java:862)
>         at org.jboss.jetty.Jetty.service(Jetty.java:497)
>         at
org.mortbay.http.HttpConnection.service(HttpConnection.java:752)
>         at
org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:916)
>         at org.mortbay.http.HttpConnection.handle(HttpConnection.java:769)
>         at
org.mortbay.http.SocketListener.handleConnection(SocketListener.java:202)
>         at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289)
>         at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:455)
> Caused by: java.net.SocketException: Software caused connection abort:
socket write error
>         at java.net.SocketOutputStream.socketWrite0(Native Method)
>         at
java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
>         at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
>         at
java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:69)
>         at
java.io.BufferedOutputStream.write(BufferedOutputStream.java:113)
>         at
java.io.ObjectOutputStream$BlockDataOutputStream.drain(ObjectOutputStream.ja
va:1637)
>         at
java.io.ObjectOutputStream$BlockDataOutputStream.setBlockDataMode(ObjectOutp
utStream.java:1546)
>         at
java.io.ObjectOutputStream.writeNonProxyDesc(ObjectOutputStream.java:1146)
>         at
java.io.ObjectOutputStream.writeClassDesc(ObjectOutputStream.java:1100)
>         at
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1239)
>         at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)
>         at
java.io.ObjectOutputStream.writeFatalException(ObjectOutputStream.java:1353)
>         at
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:281)
>         at sun.rmi.server.UnicastRef.marshalValue(UnicastRef.java:265)
>         at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:124)
>         ... 27 more
>
>
>
>
> The quartz properties for the server are:
>
> org.quartz.scheduler.instanceName = OSWorkflowQuartzScheduler
> org.quartz.scheduler.logger = schedLogger
> org.quartz.scheduler.rmi.export = true
> org.quartz.scheduler.rmi.registryHost = localhost
> org.quartz.scheduler.rmi.registryPort = 7777     // because standard rmi
port 1099 is occupied by JBOSS
>
> org.quartwPLOYMENT] webapp: publishing webz.logger.schedLogger.class = 
> org.quartz.impl.Log4jLogger
> org.quartz.logger.schedLogger.categoryName = scheduler
> org.quartz.logger.tpLogger.class = org.quartz.impl.Log4jLogger
> org.quartz.logger.tpLogger.categoryName = scheduler.threadPool
> org.quartz.logger.jsLogger.class = org.quartz.impl.Log4jLogger
> org.quartz.logger.jsLogger.categoryName = scheduler.persistence
>
> org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool
> org.quartz.threadPool.threadCount = 3
> org.quartz.threadPool.threadPriority = 4
>
>
> org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX
> org.quartz.jobStore.driverDelegateClass =
org.quartz.impl.jdbcjobstore.PostgreSQLDelegate
> org.quartz.jobStore.dataSource = myDS
> org.quartz.jobStore.tablePrefix = QRTZ_
> org.quartz.dataSource.myDS.driver = org.postgresql.Driver
> org.quartz.dataSource.myDS.URL = jdbc:postgresql://localhost/testdb
> org.quartz.dataSource.myDS.user = test1
> org.quartz.dataSource.myDS.maxConnections = 3
>
>
> The quartz properties for the client example are:
>
> org.quartz.scheduler.instanceName = OSWorkflowQuartzScheduler
> org.quartz.scheduler.logger = schedLogger
> org.quartz.scheduler.rmi.proxy = true
> org.quartz.scheduler.rmi.registryHost = localhost
> org.quartz.scheduler.rmi.registryPort = 7777
>
>
>
> -------------------------------------------------------
> This sf.net email is sponsored by:ThinkGeek
> Welcome to geek heaven.
> http://thinkgeek.com/sf 
> _______________________________________________
> Opensymphony-developers mailing list
> [email protected] 
> https://lists.sourceforge.net/lists/listinfo/opensymphony-developers 
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
msgmiddle
<Prev in Thread] Current Thread [Next in Thread>
  • Re: socket write error using remote Quartz Job Scheduler,
Current Sitemap | © 2012 planetjava | Contact | Privacy Policy