aboutsummaryrefslogtreecommitdiffstats
path: root/actionwebservice/lib/action_web_service
Commit message (Collapse)AuthorAgeFilesLines
* clean up cases where we override #inheritedLeon Breedt2005-06-252-13/+13
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1511 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* fix WSDL generation, change the way protocols are instantiated, and add Leon Breedt2005-06-259-28/+43
| | | | | | | | the ability to override the namespace used in WSDL instead of always forcing 'urn:ActionWebService' git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1501 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Add workaround for SOAP4R changing find_mapped_soap_class return value ↵Leon Breedt2005-06-131-1/+14
| | | | | | [Shugo Maeda] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1409 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fix moduled controller URLs in WSDL, and add unit test to verify the ↵Leon Breedt2005-06-131-1/+1
| | | | | | | | | generated URL. See ticket #1428. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1408 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* CSS needs "red" not #redDavid Heinemeier Hansson2005-06-061-1/+1
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1388 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* fix scaffolding template paths (Pathname does weird things on Win32)Leon Breedt2005-05-311-1/+1
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1375 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* fix that functional testing for :layered SOAP would complain that itLeon Breedt2005-05-081-4/+1
| | | | | | | was not XML-RPC. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1295 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* support using invocation filters in :direct controllers as well, forLeon Breedt2005-05-071-4/+8
| | | | | | | | | consistency. action pack filters don't necessarily include enough information about the request since they occur before AWS actually sees the request and unpacks it. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1294 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* add base64 signature type (thanks, Shugo Maeda!)Leon Breedt2005-05-074-8/+52
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1293 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* remove usages of @request, @response, @params, and replace with #request, ↵Leon Breedt2005-05-053-58/+49
| | | | | | | | | #response, #params, except for test_invoke (values come from the test case) and one scaffold RHTML template. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1287 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* fix boolean field rendering in scaffoldingLeon Breedt2005-05-051-2/+2
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1286 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* fix :delegated invocation in the scaffoldingLeon Breedt2005-05-051-1/+6
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1285 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* add support for structured types as input parameters to scaffolding,Leon Breedt2005-05-014-34/+58
| | | | | | | | fixes scaffolding for APIs like metaWeblog that require an input struct (by dropping structs in nested <ul> lists). git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1265 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* default to using UTF-8 as response encoding for SOAP if none isLeon Breedt2005-04-285-13/+33
| | | | | | | | supplied, but if an encoding is supplied by caller, use that for the response instead (NAKAMURA Hiroshi) git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1245 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* add charset=utf-8 to SOAP response content type, and make base_uriLeon Breedt2005-04-282-3/+11
| | | | | | | | | respect relative_url_root for the endpoint of SOAP messages (Shugo Maeda). if WSDL was retrieved over HTTPS, use HTTPS in the endpoint URLs as well. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1244 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fix regression where nil values were incorrectly being cast into theLeon Breedt2005-04-191-0/+1
| | | | | | | default values for their base types. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1234 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* add backwards compatibility for the public API change made to #api_methods, ↵Leon Breedt2005-04-172-6/+31
| | | | | | | | | as it is being used in some apps. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1197 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Send a stripped down message in the text following 500, and leave the detailedLeon Breedt2005-04-161-1/+1
| | | | | | | response for the body, or we may generate invalid HTTP responses that causes 404's. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1172 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Remove a cause of casting failure for XML-RPC by ignoring structure members notLeon Breedt2005-04-164-2/+11
| | | | | | | | | defined in the target type, and perform more sanity checks to make more obvious what the resolution should be when neglecting to provide a valid signature or failing to attach an API to a service implementation class. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1171 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* support SOAP invocation of layered services in scaffolding too, fix bug whenLeon Breedt2005-04-052-7/+27
| | | | | | | method takes no parameters git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1098 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* initial go at making :layered dispatching generate WSDL for SOAP, and haveLeon Breedt2005-04-054-16/+36
| | | | | | | :layered process SOAP method calls correctly as well, may be unstable git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1097 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* make XMLRPC::FaultException have a #message, otherwise the thrown exceptionLeon Breedt2005-04-051-0/+4
| | | | | | | is useless in functional test backtraces git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1093 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* add API::Method#expects_to_hash convenience as wellLeon Breedt2005-04-051-0/+9
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1092 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* add API::Method#expects_index_of helper to get the index ofLeon Breedt2005-04-051-0/+10
| | | | | | | a named parameter git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1091 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* be explicit about the object to do #instance_eval in for delegated dispatching,Leon Breedt2005-04-0510-229/+225
| | | | | | | clean up iterations to use #zip (bitsweat), git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1090 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* * Fix casting of nested members in structured types if we have a signatureLeon Breedt2005-04-043-11/+16
| | | | | | | | | | | | | type available for it even if they are already of the desired type as SOAP/XML-RPC unmarshaling may have gotten it wrong: SOAP likes to always use DateTime no matter what, for example, whereas we allow a distinction between Date, DateTime and Time in the signature for convenience casting * Fix raising of exceptions by test_invoke so functional tests fail properly on exception instead of returning the exception object * Fix Struct#each_pair to yield the value and not the member type git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1089 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* don't use SyncEnumerator, its far too slow to be used in something ↵Leon Breedt2005-04-031-2/+2
| | | | | | frequently called git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1085 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* use #rescue_action in WS scaffolding so that exceptions in API methods give ↵Leon Breedt2005-04-031-23/+38
| | | | | | | | | a standard Rails error page on failure git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1076 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* allow selecting the protocol to use when invoking theLeon Breedt2005-04-034-5/+11
| | | | | | | | scaffolded method. fix bug in walking delegated container services. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1074 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* filter out embedded nil values for XML-RPCLeon Breedt2005-04-021-2/+9
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1073 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* * collapse 'ws' back into protocols, it just added complexity and ↵Leon Breedt2005-04-0227-1102/+836
| | | | | | | | | | | | | indirection, and was hard to extend. * extract casting into seperate support file * ensure casting always does the right thing for return values, should fix interoperability issues with Ecto and possibly other XML-RPC clients * add functional unit tests for scaffolding * represent signature items with classes instead of symbols/Class objects, much more flexible * tweak logging to always show casted versions of parameters and return values, if possible. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1072 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Removed broken attempt to DRY module ClassMethod #970David Heinemeier Hansson2005-04-021-0/+5
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1069 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Automatically extend the class which gets a module included with the ↵David Heinemeier Hansson2005-04-021-5/+0
| | | | | | ClassMethods module if it exists #970 [Lucas Carlson] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1068 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* display the amount of time taken to invoke a scaffolding requestLeon Breedt2005-03-312-5/+13
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1044 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* remove ActiveRecordSoapMarshallable, can't reproduce the problem it was ↵Leon Breedt2005-03-311-14/+0
| | | | | | intended to fix. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1043 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* first pass of web service scaffolding. add ability to quickly generate anLeon Breedt2005-03-2911-5/+382
| | | | | | | | action pack request for a protocol, add missing log_error when we fail to parse protocol messages. add RDoc for scaffolding and functional testing. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1037 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* remove wrongheaded uses of "rescue nil" if it will mask a useful exception. ↵Leon Breedt2005-03-293-13/+6
| | | | | | | | | also include the whole backtrace in the 500 error response body if exception reporting is turned on (the default). git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1035 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* don't hide exceptions when we fail to parse XML-RPC messages.Leon Breedt2005-03-282-4/+7
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1031 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* generalize casting code to be used by both SOAP and XML-RPC (previously only ↵Leon Breedt2005-03-2812-228/+353
| | | | | | | | | | XML-RPC). switch to better model for API methods, and improve the ability to generate protocol requests/response, will be required by upcoming scaffolding. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1030 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* allow direct dispatching methods to declare their parameters as well, for ↵Leon Breedt2005-03-261-1/+6
| | | | | | | | | | brevity's sake, it seems to be counter-intuitive not to do so (closes #939). update gem require versions. fix unit tests for exception de-shallowing changes. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@992 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fixed that MissingSourceFile's wasn't properly detected in production mode ↵David Heinemeier Hansson2005-03-251-1/+1
| | | | | | #925 [Nicholas Seckar] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@990 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Improved error reporting especially around never shallowing exceptions. ↵David Heinemeier Hansson2005-03-231-3/+6
| | | | | | Debugging helpers should be much easier now #980 [Nicholas Seckar] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@984 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fixed documentation and prepared for 0.11.0 releaseDavid Heinemeier Hansson2005-03-221-2/+2
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@976 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* make the response QName match up with that declared for the message in theLeon Breedt2005-03-201-1/+1
| | | | | | | | WSDL, to not do so violates the spec. also fixes this error that occurred with SOAP::WSDLDriverFactory: "RuntimeError: Cannot find {}return as a children of {urn:ServiceName}messageName" git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@920 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* dup the value received from @request, so we modify the copy and not the ↵Leon Breedt2005-03-151-0/+1
| | | | | | | | | original, and avoid frozen errors. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@912 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* allow 0, 1, '0' or '1' to be cast to the appropriate values for booleanLeon Breedt2005-03-101-0/+3
| | | | | | | | | values. update XML-RPC example to work in :layered mode. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@883 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* change type of faultCode in marshaled SOAP faults to a QName,Leon Breedt2005-03-101-1/+1
| | | | | | | and its value to 'Server' in the SOAP namespace. should fix #804. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@882 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* add action_web_service/test_invoke, will be used by for testing APIs inLeon Breedt2005-03-042-0/+138
| | | | | | | a Rails project instance. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@830 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* allow the client to specify options to be passed through to the underlyingLeon Breedt2005-03-031-0/+17
| | | | | | | | SOAP::RPC::Driver. add to RDoc an example of using these options to configure SSL client-certificate authenticated connections to the server. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@826 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* make the marshaler use the same set of columns as the code that generatesLeon Breedt2005-03-021-1/+3
| | | | | | | WSDL, avoids mismatches when there are associations in the AR model class. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@825 5ecf4fe2-1ee6-0310-87b1-e25e094e27de