[Backgroundrb-devel] backgroundrb worker and soap?

Phil Smy phil at ideeli.com
Fri Feb 6 11:58:23 EST 2009


I am having a problem calling a soap driver from within a backgroundrb  
worker.
Here is basically what I am doing:

class MyWorker < BackgrounDRb::MetaWorker
   def create(args = nil)
     # this method is called, when worker is loaded for the first time
   end
   def process args
     inv_items = NSHelper::NSPort.instance.find_things(args)
   end
end

The Helper create a PortType and so on that has been generated by  
wsdl2ruby.

I am getting an error inside of httptimeout:

2009-02-06 17:56:40 (46574) I: #<NoMethodError: You have a nil object  
when you didn't expect it!
The error occurred while evaluating nil.cancel>
2009-02-06 17:56:40 (46574) I: /Library/Ruby/Gems/1.8/gems/ 
httpclient-2.1.3.1/lib/httpclient/timeout.rb:76:in `cancel'
/Library/Ruby/Gems/1.8/gems/httpclient-2.1.3.1/lib/httpclient/ 
timeout.rb:116:in `timeout'
and so on.
It immediately is going to a timeout - so I think that is the crux of  
the issue.

I can use my helper / soap calls fine from within a controller or the  
console - it is just from the worker I am having problems.

Any help would be greatly appreciated!

Phil


More information about the Backgroundrb-devel mailing list