AWS+Apache2+SCGI Issue

Hi guys,
I am trying to run a rails app using apache2+scgi, but AWS failed to
handle SOAP request, it raised errors about no valid methods.
AWS handls SOAP requests well when running on webrick. I have not
tried fastcgi yet.

The error log:

Processing ForumsController#api (for 127.0.0.1 at 2005-11-09 23:46:15)
[POST]
Parameters: {“<?xml version"=>"\"1.0\" encoding=\"utf-8\" ?>\n<env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema\”\n
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/\“\n
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance\”>\n
env:Body\n <n1:FindAllForums xmlns:n1="urn:ActionWebService"\n
env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/\“>\n
</n1:FindAllForums>\n </env:Body>\n</env:Envelope>”,
“action”=>“api”, “controller”=>“forums”}

RuntimeError (No valid method call - missing method name!):
/usr/lib/ruby/18/xmlrpc/parserrb:478:in parseMethodCall' /usr/lib/ruby/18/xmlrpc/marshalrb:63:in load_call’
/usr/lib/ruby/18/xmlrpc/marshalrb:32:in load_call' /usr/lib/ruby/gems/18/gems/actionwebservice-092/lib/action_web_service/protocol/xmlrpc_protocolrb:36:in decode_request’
/usr/lib/ruby/gems/18/gems/actionwebservice-092/lib/action_web_service/protocol/xmlrpc_protocolrb:32:in
decode_action_pack_request' /usr/lib/ruby/gems/18/gems/actionwebservice-092/lib/action_web_service/protocol/discoveryrb:20:in discover_web_service_request’
/usr/lib/ruby/gems/18/gems/actionwebservice-092/lib/action_web_service/protocol/discoveryrb:18:in
each' /usr/lib/ruby/gems/18/gems/actionwebservice-092/lib/action_web_service/protocol/discoveryrb:18:in discover_web_service_request’
/usr/lib/ruby/gems/18/gems/actionwebservice-092/lib/action_web_service/dispatcher/action_controller_dispatcherrb:44:in
dispatch_web_service_request' (eval):1:in api’
/usr/lib/ruby/gems/18/gems/actionpack-1102/lib/action_controller/baserb:834:in
perform_action_without_filters' /usr/lib/ruby/gems/18/gems/actionpack-1102/lib/action_controller/filtersrb:295:in perform_action_without_benchmark’
/usr/lib/ruby/gems/18/gems/actionpack-1102/lib/action_controller/benchmarkingrb:69:in
perform_action_without_rescue' /usr/lib/ruby/gems/18/gems/actionpack-1102/lib/action_controller/benchmarkingrb:69:in measure’
/usr/lib/ruby/gems/18/gems/actionpack-1102/lib/action_controller/benchmarkingrb:69:in
perform_action_without_rescue' /usr/lib/ruby/gems/18/gems/actionpack-1102/lib/action_controller/rescuerb:82:in perform_action’
/usr/lib/ruby/gems/18/gems/actionpack-1102/lib/action_controller/baserb:365:in
process_without_session_management_support' /usr/lib/ruby/gems/18/gems/actionpack-1102/lib/action_controller/session_managementrb:116:in process’
/usr/lib/ruby/gems/18/gems/rails-0142/lib/dispatcherrb:36:in
dispatch' /usr/lib/ruby/gems/18/gems/scgi_rails-043/bin/scgi_service:23:in process_request’
/usr/lib/ruby/gems/18/gems/scgi_rails-043/bin/scgi_service:21:in
synchronize' /usr/lib/ruby/gems/18/gems/scgi_rails-043/bin/scgi_service:21:in process_request’
/usr/lib/ruby/gems/18/gems/scgi_rails-043/lib/scgirb:291:in
read_header' /usr/lib/ruby/gems/18/gems/scgi_rails-043/lib/scgirb:253:in handle_client’
/usr/lib/ruby/gems/18/gems/scgi_rails-043/lib/scgirb:234:in
initialize' /usr/lib/ruby/gems/18/gems/scgi_rails-043/lib/scgirb:234:in handle_client’
/usr/lib/ruby/gems/18/gems/scgi_rails-043/lib/scgirb:188:in listen' /usr/lib/ruby/gems/18/gems/scgi_rails-043/lib/scgirb:186:in initialize’
/usr/lib/ruby/gems/18/gems/scgi_rails-043/lib/scgirb:186:in listen' /usr/lib/ruby/gems/18/gems/scgi_rails-043/lib/scgirb:412:in run’
/usr/lib/ruby/gems/18/gems/scgi_rails-043/bin/scgi_service:61

Completed in 0.00405 (246 reqs/sec) | DB: 0.00000 (0%) | 500 Internal
Protocol Error [http://forum.crawler.mymymy.cn/forums/api]

The ok log:
Processing ForumsController#invoke_submit (for 192.168.1.110 at
2005-11-09 21:15:32) [POST]
Parameters: {“commit”=>“Invoke”, “protocol”=>“soap”,
“service”=>“forums”, “action”=>“invoke_submit”,
“method”=>“FindAllForums”, “controller”=>“forums”}
e[4;36;1mForum Load (0.025152)e[0m e[0;1mSELECT * FROM forums e[0m
e[4;35;1mForum Columns (0.000353)e[0m e[0mSHOW FIELDS FROM
forumse[0m

Web Service Request: FindAllForums() Entrypoint: invoke_submit

<?xml version="1.0" encoding="utf-8" ?>

<env:Envelope xmlns:xsd=“http://www.w3.org/2001/XMLSchema
xmlns:env=“http://schemas.xmlsoap.org/soap/envelope/
xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”>
env:Body
<n1:FindAllForums xmlns:n1=“urn:ActionWebService”
env:encodingStyle=“http://schemas.xmlsoap.org/soap/encoding/”>
</n1:FindAllForums>
</env:Body>
</env:Envelope>

Web Service Response (0.041560): => [#<Forum:0xb75ce3f0
@attributes={“name”=>“\345\244\251\346\266\257\346\235\202\350\260\210”,
“updated_at”=>Sun Nov 06 23:40:47 CST 2005, “code”=>“tianya_free”,
“url”=>“http://www8.tianyaclub.com/Publicforum/ArticlesList/0/free.shtml”,
“id”=>1,
“description”=>“\345\244\251\346\266\257\346\235\202\350\260\210”,
“crawler”=>“tianya”, “created_at”=>Sun Nov 06 21:55:00 CST 2005}>]

<?xml version="1.0" encoding="UTF-8" ?>

<env:Envelope xmlns:xsd=“http://www.w3.org/2001/XMLSchema
xmlns:env=“http://schemas.xmlsoap.org/soap/envelope/
xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”>
env:Body
<n1:FindAllForumsResponse xmlns:n1=“urn:ActionWebService”
env:encodingStyle=“http://schemas.xmlsoap.org/soap/encoding/”>


1
5aSp5rav5p2C6LCI
http://www8.tianyaclub.com/Publicforum/ArticlesList/0/free.shtml
5aSp5rav5p2C6LCI
<created_at
xsi:type=“xsd:dateTime”>2005-11-06T21:55:00+08:00</created_at>
tianya
<updated_at
xsi:type=“xsd:dateTime”>2005-11-06T23:40:47+08:00</updated_at>
tianya_free


</n1:FindAllForumsResponse>
</env:Body>
</env:Envelope>
Sending data
Rendering layouts/forums (200 OK)
Completed in 0.18382 (5 reqs/sec) | Rendering: 0.00007 (0%) | DB:
0.02551 (13%) | 200 OK [http:///forums/invoke_submit]


Regards.

Yufan

Feed-Tank.com : Easy to use online feeds aggregator and reader.
FT80off: Use this code to get up to $80 off for any dreamhost hosting
plan.


Rails mailing list
[email protected]
http://lists.rubyonrails.org/mailman/listinfo/rails