cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Yves Vindevogel <>
Subject Re: Logging
Date Fri, 09 Jun 2006 11:12:31 GMT
I just took a look at Wildfire.  It seems that that is more what I was 
looking for:
- It handles Jabber
- It stores its data in a database

Now I only have to find out how to create messages from (in my case) 
mySQL procedures.

Yves Vindevogel wrote:
> Hi Andrew,
> Thanks for your very interesting mail.
> My replies are in it.
> Regards,
> Yves
> Andrew Stevens wrote:
>>> From: Yves Vindevogel <>
>>> Date: Thu, 08 Jun 2006 19:45:51 +0200
>>> Hi,
>>> I would like to have some more logging of everything that is send to 
>>> my Cocoon server.
>>> I have Jetty / Cocoon listening on port 8888.
>>> I can see it logs a page that is being asked.
>>> However, (and I'm trying to do something strange) I'm trying to make 
>>> a Jabber client connect to it.
>>> I set my jabber client to connect to the server on port 8888.
>> Sounds interesting, if a bit weird :-)
> I know :-))
>> I'm guessing a bit here as I've not used it myself, but I thought 
>> Jabber uses XMPP, not HTTP?  According to RFC3920 [1],
>> "The Extensible Messaging and Presence Protocol (XMPP) is an open 
>> Extensible Markup Language [XML] protocol for near-real-time 
>> messaging, presence, and request-response services."
>> ...
>> "Although there is no necessary coupling of an XML stream to a [TCP] 
>> connection (e.g., two entities could connect to each other via 
>> another mechanism such as polling over [HTTP]), this specification 
>> defines a binding of XMPP to TCP only."
>> so I'm not surprised just pointing your Jabber client at a HTTP 
>> server doesn't work.  On the other hand, since it mentions 
>> request-response services, I guess it might be possible to plug 
>> Cocoon into a Jabber server by providing another Environment 
>> implementation that uses its request & response types rather than 
>> HttpRequest & HttpResponse?
> I was using Exodus on Windows, Fire on OSX and some code written in 
> Realbasic to test this.  The only thing I could change was the port 
> and the server.  So I changed that to my running Jetty/Cocoon to see 
> what happened.  Your explanation is correct, it uses a different 
> protocol.
>> Alternatively, I noticed the Jabber site has an enhancement proposal 
>> for "HTTP Binding" [2].  Although this seems more concerned with HTTP 
>> clients connecting to an XMPP server, it did contain a link to one on 
>> "Jabber HTTP Polling" [3] that has been passed to active status.  
>> This uses periodic POST requests with content type text/xml, so I 
>> guess it may be possible to connect those to Cocoon.  How you 
>> configure your client to use this type of connection, though, I've no 
>> idea.  RTFM?
> I will write the code myself if needed.  I have a class (in Realbasic) 
> that is a wrapper round the tcp socket that can communicate.  I've got 
> that already.
>> The downside to that, of course, is you'd probably end up having to 
>> more or less implement a Jabber server in Cocoon...
> See my detailed project description below.  I'm not interested in IM, 
> as such.  I'm just interested in the transport mechanism.
>> Here's another thought.  Wildfire [4] is an Open Source Java-based 
>> XMPP server that can be deployed as a WAR, that supports plug-ins.  
>> Perhaps you could write a plug-in for it that passes various messages 
>> through to a Cocoon instance running in another context on the same 
>> server?  Just (!) get a RequestDispatcher to the Cocoon servlet, 
>> create your own HttpRequest implementation class (filled with the 
>> contents of the message) and supply a HttpResponse that captures the 
>> output to a string buffer.  [random thought - it's too late now, but 
>> perhaps that would have made an interesting GSoC project...]
> I'll look into that.  Wildfire is unknown to me.  So is Java, I'm 
> afraid.  I can write some Java in xsp-logic and some Java script, but 
> I've never written a complete Java project.  I've started with Basic 
> back on the Commodore 64 and always stayed with it through GW-Basic, 
> Quick Basic, Visual Basic and now Realbasic.  I use Cocoon for 
> webdevelopment because I like XML a lot.
> But anyway, I'll take a look at it and browse some sources in Cocoon 
> to see whether I can "learn" something.
>>> Of course, it does not connect, but I can't see anything in the logs 
>>> about what it's sending, ....
>> If it's not seeing a valid HTTP request, that's not entirely surprising.
>>> Is something like this possible (log that jabber is looking for 
>>> contact, that's all)
>>> I don't want to create a jabber server with cocoon, just see what 
>>> they send.
>> So why not just point it to a Jabber server, then use a packet 
>> sniffer like Ethereal [5] to eavesdrop on the normal traffic between 
>> the two?  
> Because I had a running Cocoon and thought I'd see more there.  I know 
> pretty much what they are sending to each other, but I wanted to see 
> how Cocoon got it ...
>> So long as it's configured not to use a TLS-encrypted connection 
>> there's no reason that shouldn't work, and it'd be a lot easier than 
>> trying to use Cocoon to do the same job :-)
> Ok, let my explain what the project is all about.  I need a system 
> (app) that corresponds with other users that are using the same app.  
> They send messages to each other and to a central point.  The messages 
> to the central server are like "log in", "send my collection", "look 
> for x in other collections" ...  The messages to the users 
> individually are like "i want to buy x from you for y$", "i agree to 
> sell to you", ....  All messages, including the ones between the users 
> must be recorded (in a database).  One communication is always 3 or 4 
> messages: eg.  1) I want to buy x from you for y $  2)  I agree to 
> sell x to you for y  3) I confirm that you responded positively to my 
> demand and were closing a deal on x for y     Other example: 1) please 
> send my the collection 2) here's my collection of x items 3) thank you 
> for sending me your collection of x items (then no response if the 
> check is ok, but if for instance the answer is 3) thank you for 
> sending me your collection of x-1 items then you have 4) no, sorry, I 
> send you x items  lets recommunicate.) This is all a standard system 
> to communicate with Xml between computers (think they call it QOS)
> So, the above thing looks like jabber ...  Jabber uses XML to 
> communicate, it has users and it has rooms.  So, this way I could have 
> implemented my transport mechanism very easily ...
> However, Jabber does not talk to a database (I think) to get data.  
> Jabber would not know how to respond to "look in collection for x".  
> Therefore, I need to link a backend. I was thinking about Cocoon off 
> course ...
>> Andrew.
>> [1]
>> [2]
>> [3]
>> [4]
>> [5]
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail:
>> For additional commands, e-mail:
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message