On Fri, Mar 05, 2010 at 11:57:05AM -0500, Brian Topping wrote:
Thanks Emil. That makes some sense, but as I think about it, I'm not
sure I understand how to wire these together. Blaze is obviously
Java, and the point of any of these RPC abstractions is to instantiate
a remote service bean and call methods. PHP can instantiate Java
easily enough, but I do not see a supported way for Java to
instantiate a PHP service object. So there's no way for Blaze to
instantiate a PHP object (i.e. a PHP object compiled into Java), or
even a proxy for the PHP object that contains the glue. Without that,
I can't imagine (in hindsight) how using Blaze will ever work as a
front end for PHP code.
I'm far from being a master of PHP, but I'm wondering if there might
be a misfeature in the PHP standard library implementation for
Quercus. This is super simple to test... unpack
http://sourceforge.net/projects/amfphp/files/amfphp/amfphp%201.9.zip
and drop it into your webapp root. No configuration is necessary.
Then load http://localhost:8080/amfphp/browser/index.html and you'll
see the issue.
Am I missing anything obvious?
I don't think so. I'll file this as a bug - there might be an easy fix.
http://bugs.caucho.com/view.php?id=3926
Invoking the PHP from Java can be tricky for cases like these. Some
care needs to be taken to do it correctly.
Thanks,
Emil
Cheers, Brian
On Mar 4, 2010, at 7:43 PM, Emil Ong wrote:
Hi Brian,
I think your best bet is to use BlazeDS. As far as I know, nobody has
used AMFPHP with Quercus, but using BlazeDS would be simple (just use
new Java(some.blazeds.Clazz, first arg, etc) to create objects).
You could also try using Hessian Flash, but then you'd need your
objects
to be Java objects that you access from PHP.
Thanks,
Emil
On Thu, Mar 04, 2010 at 07:30:36PM -0500, Brian Topping wrote:
Greetings,
I'm just getting started with Quercus and am in a situation where an
existing application is using AMFPHP. Looking at the client packets
that AMFPHP is storing in the logs, they appear to be well-formed.
When I look at them on the wire with Wireshark, they have Java class
names in them.
It makes perfect sense that the objects in Quercus are Java objects,
but the serialization of same seems to be different than what AMFPHP
wants to serialize them as, causing the issue. If I am understanding
the issue correctly, is there a way to have the objects serialize as
if they were native PHP objects?
Failing that, I would like to modify AMFPHP so that it uses BlazeDS
to
send the object over the wire. Has anyone attempted this? If it's
just dead simple, that's a perfectly appropriate answer too. I was
just hoping to not dig all the way into this to find there are known
issues in this realm.
Any information kindly appreciated,
Brian
___
resin-interest mailing list
resin-interest@caucho.com
http://maillist.caucho.com/mailman/listinfo/resin-interest
___
resin-interest mailing list
resin-interest@caucho.com
http://maillist.caucho.com/mailman/listinfo/resin-interest
___
resin-interest mailing list
resin-interest@caucho.com
http://maillist.caucho.com/mailman/listinfo/resin-interest
___
resin-interest mailing list
resin-interest@caucho.com
http://maillist.caucho.com/mailman/listinfo/resin-interest