Commit Graph

77 Commits

Author SHA1 Message Date
Leon Breedt
fa7f4a0664 Add workaround for SOAP4R changing find_mapped_soap_class return value [Shugo Maeda]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1409 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-06-13 03:22:01 +00:00
Leon Breedt
887e67c80e Fix moduled controller URLs in WSDL, and add unit test to verify the generated URL.
See ticket #1428.


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1408 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-06-13 02:58:44 +00:00
David Heinemeier Hansson
5add31eda4 CSS needs "red" not #red
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1388 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-06-06 09:48:48 +00:00
Leon Breedt
46e68538c0 fix scaffolding template paths (Pathname does weird things on Win32)
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1375 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-05-31 02:50:02 +00:00
Leon Breedt
92b925b1c5 memo to self: add :rest dispatching mode, and vanilla XML message support
a.l.a Backpack API...its so Web 2.0 :)


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1333 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-05-20 01:36:02 +00:00
David Heinemeier Hansson
6ea6a725c4 Push to .org instead
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1310 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-05-19 16:42:47 +00:00
Leon Breedt
979880dd24 add test to ensure the bug fixed by [1295] can't occur again.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1296 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-05-08 19:58:15 +00:00
Leon Breedt
190eaf9307 fix that functional testing for :layered SOAP would complain that it
was not XML-RPC.


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1295 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-05-08 19:34:54 +00:00
Leon Breedt
884fd4792d support using invocation filters in :direct controllers as well, for
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
2005-05-07 23:49:45 +00:00
Leon Breedt
47a7084b94 add base64 signature type (thanks, Shugo Maeda!)
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1293 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-05-07 22:57:08 +00:00
Leon Breedt
421045e2ff remove usages of @request, @response, @params, and replace with #request, #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
2005-05-05 16:59:07 +00:00
Leon Breedt
811f6a7aab fix boolean field rendering in scaffolding
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1286 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-05-05 16:11:49 +00:00
Leon Breedt
a02f1b85f0 fix :delegated invocation in the scaffolding
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1285 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-05-05 16:07:06 +00:00
Leon Breedt
a080b1a231 add support for structured types as input parameters to scaffolding,
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
2005-05-01 05:07:37 +00:00
Leon Breedt
8694a79bb2 default to using UTF-8 as response encoding for SOAP if none is
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
2005-04-28 17:55:34 +00:00
Leon Breedt
896fea505b add charset=utf-8 to SOAP response content type, and make base_uri
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
2005-04-28 01:19:52 +00:00
Leon Breedt
74c9fd2ba5 add entry for nil casting change
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1243 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-27 19:43:28 +00:00
Leon Breedt
3cf461323c Fix regression where nil values were incorrectly being cast into the
default values for their base types.


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1234 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-19 19:00:06 +00:00
David Heinemeier Hansson
77af61be40 Added xml_http_request/xhr method for simulating XMLHttpRequest in functional tests #1151 [Sam Stephenson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1230 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-19 16:34:44 +00:00
David Heinemeier Hansson
7d01005514 Fixed documentation and prepared for release of 0.12
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1216 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-18 20:10:11 +00:00
Leon Breedt
c11cc309fa add backwards compatibility for the public API change made to #api_methods, as it is
being used in some apps.


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1197 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-17 17:20:44 +00:00
Leon Breedt
5feb7e26e8 Send a stripped down message in the text following 500, and leave the detailed
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
2005-04-16 21:59:55 +00:00
Leon Breedt
7f32666924 Remove a cause of casting failure for XML-RPC by ignoring structure members not
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
2005-04-16 19:29:42 +00:00
Leon Breedt
a04fc268b7 add missing public API change
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1124 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-10 03:36:19 +00:00
David Heinemeier Hansson
bd9a81ca2d Moved to new server
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1102 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-07 06:20:54 +00:00
Leon Breedt
6427133584 support SOAP invocation of layered services in scaffolding too, fix bug when
method takes no parameters


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1098 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-05 22:29:01 +00:00
Leon Breedt
1155ea0aa3 initial go at making :layered dispatching generate WSDL for SOAP, and have
: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
2005-04-05 21:37:48 +00:00
Leon Breedt
97e39fcb64 make XMLRPC::FaultException have a #message, otherwise the thrown exception
is useless in functional test backtraces


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1093 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-05 16:25:47 +00:00
Leon Breedt
9b42cd8cc1 add API::Method#expects_to_hash convenience as well
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1092 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-05 16:00:28 +00:00
Leon Breedt
7a5bac1de0 add API::Method#expects_index_of helper to get the index of
a named parameter


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1091 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-05 15:41:04 +00:00
Leon Breedt
361dcad8fd be explicit about the object to do #instance_eval in for delegated dispatching,
clean up iterations to use #zip (bitsweat), 


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1090 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-05 05:39:45 +00:00
Leon Breedt
d7a7d85dbd * Fix casting of nested members in structured types if we have a signature
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
2005-04-04 22:58:02 +00:00
Leon Breedt
2cfe309dc4 don't use SyncEnumerator, its far too slow to be used in something frequently called
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1085 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-03 23:12:34 +00:00
Leon Breedt
17e5035bc5 use #rescue_action in WS scaffolding so that exceptions in API methods give a standard Rails
error page on failure


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1076 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-03 05:23:30 +00:00
Leon Breedt
e5fdff8f46 remove finished tasks
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1075 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-03 00:48:32 +00:00
Leon Breedt
fcfe3febd3 allow selecting the protocol to use when invoking the
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
2005-04-03 00:12:11 +00:00
Leon Breedt
353497458b filter out embedded nil values for XML-RPC
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1073 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-02 22:05:16 +00:00
Leon Breedt
aaea48fe98 * collapse 'ws' back into protocols, it just added complexity and 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
2005-04-02 21:03:36 +00:00
David Heinemeier Hansson
7c8d2f28e1 Removed broken attempt to DRY module ClassMethod #970
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1069 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-02 09:29:43 +00:00
David Heinemeier Hansson
c788bcb416 Automatically extend the class which gets a module included with the ClassMethods module if it exists #970 [Lucas Carlson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1068 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-02 09:14:19 +00:00
David Heinemeier Hansson
8d488264b5 Added install.rbs for all frameworks and made all of them generic enough not to require maintenance #1013, #1012
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1053 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-02 07:29:08 +00:00
Leon Breedt
0de97c81db display the amount of time taken to invoke a scaffolding request
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1044 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-31 10:47:01 +00:00
Leon Breedt
0f198eb58e remove ActiveRecordSoapMarshallable, can't reproduce the problem it was intended to fix.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1043 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-31 09:12:10 +00:00
Leon Breedt
b94bd32f31 first pass of web service scaffolding. add ability to quickly generate an
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
2005-03-29 12:31:39 +00:00
Leon Breedt
37270359ac remove wrongheaded uses of "rescue nil" if it will mask a useful exception. 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
2005-03-29 09:04:31 +00:00
Leon Breedt
b14e5d8334 don't hide exceptions when we fail to parse XML-RPC messages.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1031 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-28 06:55:30 +00:00
Leon Breedt
594063f23c generalize casting code to be used by both SOAP and XML-RPC (previously only 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
2005-03-28 03:20:13 +00:00
David Heinemeier Hansson
04c7e82369 Made ready for the release of 0.11.1
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1023 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-27 14:10:42 +00:00
David Heinemeier Hansson
065cb2a08d Made ready for better release automation
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1021 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-27 13:33:54 +00:00
Leon Breedt
8032c4ffd4 allow direct dispatching methods to declare their parameters as well, for 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
2005-03-26 00:20:19 +00:00