Re: [RT] what cocoon forms lack

2003-10-10 Thread Gianugo Rabellino
Andrzej Jan Taramina wrote:
now, what do you think?


I think that following/supporting the XForms standard, which seems to be 
getting traction, would be a good thing.

Not sure the world needs YAFF (yet another forms framework).  

Or is the NIH syndrome rearing it's ugly head here? ;-)
We have been through this so many times that unless something new (but 
it should be _incredibly_ new) comes up the discussion is pretty much 
over. Please do dig the archives: you'll find that this XForms/Woody 
debate showed up in quite a few occasions and in the end there was 
consensus on simply not being good enough for server side form handling.

Ciao,

--
Gianugo Rabellino
Pro-netics s.r.l. -  http://www.pro-netics.com
Orixo, the XML business alliance - http://www.orixo.com
(Now blogging at: http://blogs.cocoondev.org/gianugo/)


Re: Renaming Woody to Cocoon Forms ?

2003-10-10 Thread Steven Noels
Stefano Mazzocchi wrote:

Which is a nice example, here, btw: the OT team proposed an alternative 
flow control concept and an alternative form framework, the community 
considered the first inferior to what we already had, but considered 
superior the second and promoted it as official.
Adapting to better reflect historical accuracy: no single line of Woody 
was written until _after_ Bruno's form proposal was discussed on the 
list. So in the end, the proposal was about design, and not about a 
finished code package being donated to the project. I tend to believe 
that this is exactly the reason why Woody has been able to grow into 
Cocoon Forms.

[at the hackaton, there was a discussion on why the REST-based approach 
that Marc proposed cannot be matched one-2-one with the flow approach. 
Marc agreed that his idea of continuation and the current continuation 
are different concepts and forcing them into the same terminology might 
stretch the paradigm too much]

No matter what the result was, I think forcing people with one solution 
forced  discussions to happen, which helped all the parties involved, 
even to understand thing that were not previously understood by both sides.

This is why having one official direction on the various areas is 
good(tm) and having a simple name for it cocoon sitemap cocoon flow 
cocoon forms would help our users to choose and feel more protected 
and a more solid foundation.
+1 - let's go for Cocoon Forms - even if I feel kind of sad seeing the 
name I suggested going away. Oh well - it's about seeing you kids grow 
up, I guess.

Bearing in mind the amount of work that requires a _real_ renaming, like 
changing package names, namespaces and all that - who's going to do that?

Cheers,

/Steven
--
Steven Noelshttp://outerthought.org/
Outerthought - Open Source Java  XMLAn Orixo Member
Read my weblog athttp://blogs.cocoondev.org/stevenn/
stevenn at outerthought.orgstevenn at apache.org


RE: [RT] Separation of Blocks and Avalon

2003-10-10 Thread Carsten Ziegeler
Stephen McConnell wrote:
 
 The million little details that cocoon assumes on top of ECM is also the 
 thing that scares me the most.
 
Me, too. And I'm really wondering if we can keep our nice little additions
if we move away from ECM.

 Is there someone who provide the breakdown of what Cocoon is doing over 
 and above ECM?  However things roll out - one of the biggest obsticles I 
 see is that we need to move away from ECM/Fortress extension and to a 
 solution where Cocoon does not need to access container APIs.  With that 
 information the Avalon crowd can address how to addres these 
 requirements in a way that makes the concern indpendent of the container 
 implementaiton.
 
We extend the ECM with our CocoonComponentManager, you can have a look
at that class. All the features (hacks?) in there have to be somehow
available using fortress, merlin or whatever.
We have another lifecycle type, the request lifecycle component. This is
an extension to poolable and means that per request only one instance
of this component is used. So if two other components lookup this
request lifecycle component, they get the same instance.
The implementation of this extension is a little bit difficult as we
have sub requests that run in the same thread but have a different
set of request lifecycle components.
In addition it's possible to process on request multi threaded which
makes this even more difficult.

There are some other important extensions like the environment handling
for the source resolver and the sitemap configurable components. They
use more or less the same technique used for the request lifecycle
components.

I'm more and more thinking that we should do one thing after the other:
first creating our blocks and than moving to fortress or merlin.
Or the other way round, if someone things that it makes more sense.
But we should avoid doing both at the same time.
I mean, we are currently happy with ECM - it works, it's stable and the
only real concern we have is the big cocoon.xconf which is solved with
blocks anyway. (I don't want to say that fortress/merlin are not stable
with this).

Carsten


Re: Renaming Woody to Cocoon Forms ?

2003-10-10 Thread Sylvain Wallez
Steven Noels wrote:

Stefano Mazzocchi wrote:


snip/

This is why having one official direction on the various areas is 
good(tm) and having a simple name for it cocoon sitemap cocoon 
flow cocoon forms would help our users to choose and feel more 
protected and a more solid foundation.


+1 - let's go for Cocoon Forms - even if I feel kind of sad seeing 
the name I suggested going away. Oh well - it's about seeing you kids 
grow up, I guess. 


I propose that we put in the docs some notes about the history of 
Woody/Cocoon Forms: who started it (you deserve credit), the initial 
name and where it came from, etc, etc, including the australian meaning 
of woody ;-)

Bearing in mind the amount of work that requires a _real_ renaming, 
like changing package names, namespaces and all that - who's going to 
do that? 


I volunteer for this. This move should also be the occasion of doing the 
refactoring (rather a polishing, actually) I proposed in august so that 
we quickly have some stable APIs.

Sylvain

--
Sylvain Wallez  Anyware Technologies
http://www.apache.org/~sylvain   http://www.anyware-tech.com
{ XML, Java, Cocoon, OpenSource }*{ Training, Consulting, Projects }
Orixo, the opensource XML business alliance  -  http://www.orixo.com



RE: Renaming Woody to Cocoon Forms ?

2003-10-10 Thread Carsten Ziegeler
Sylvain Wallez wrote:
 
 
 I propose that we put in the docs some notes about the history of 
 Woody/Cocoon Forms: who started it (you deserve credit), the initial 
 name and where it came from, etc, etc, including the australian meaning 
 of woody ;-)
 
+1 (apart from the australian meaning)
We have the CREDITS text for exactly that purpose.

 
 I volunteer for this. This move should also be the occasion of doing the 
 refactoring (rather a polishing, actually) I proposed in august so that 
 we quickly have some stable APIs.
 
Just curious, when are you planning to do so?

Carsten


Re: Renaming Woody to Cocoon Forms ?

2003-10-10 Thread Christopher Oliver
Sylvain Wallez wrote:

snip

I volunteer for this. This move should also be the occasion of doing 
the refactoring (rather a polishing, actually) I proposed in august so 
that we quickly have some stable APIs.
But as far as the continuation and flowscript support for this goes, I 
think refactoring is the proper term. IMO the hack to support 
${continuation.id} and the whole JS (woody.js, woody2.js) interface 
needs to be redesigned.

My $0.02,

Chris





RE: [RT] FirstFriday - monthly virtual Hackathon

2003-10-10 Thread TREGAN Fabien
Title: RE: [RT] FirstFriday - monthly virtual Hackathon





 De : Stefano Mazzocchi [mailto:[EMAIL PROTECTED]]
 Envoyé : jeudi 9 octobre 2003 15:26


...


  http://irc.codehaus.org/channels/geronimo/2003-09-15.html
 
 Impressive example of zero signal/noise ratio, BTW.
 
 I really hope we do better than this.


 Since you won't prevent people from joking and saying hello and asking news about wives and children, we should either have two IRC channel in parralel (/join #cocoon #cocoon_logged) (handy with ircII, but boring with mirc), or have a protocol to tell the bot what need to be logged.

 I'd suggest tu use the java syntax (do not log messages that beging with //, stop logging a user if message == /* until message==*/), but it poses the problem of code copy/paste.

 Two other problems with code copy/paste are :
-Bot's flood protection should be disabled at least for code
-Since the client will send each line as one message, ligned might be mixed with other peoples messages. That might be prevented with introducing the code and /code message with would also allow pretty printing of logs and use of java-like comments.

fabien.






Re: Renaming Woody to Cocoon Forms ?

2003-10-10 Thread Steven Noels
Carsten Ziegeler wrote:

Sylvain Wallez wrote:

I propose that we put in the docs some notes about the history of 
Woody/Cocoon Forms: who started it (you deserve credit), the initial 
name and where it came from, etc, etc, including the australian meaning 
of woody ;-)

+1 (apart from the australian meaning)
Hehe. It was funny seeing people finding that out - though it was the 
first thing which came to my mind when seeing Debian Woody quite some 
time ago. I must have been lectured English using tasty reading 
material, I guess. Or I've been subject to too much crafterm'isms over 
the past years. ;-)

We have the CREDITS text for exactly that purpose.
CREDITS should be used for proper donations, developed parallel to the 
collaborative community process, IMHO, and donated in an official way to 
the ASF (using the proper paperwork). Looking at the current list, we 
should actively try to keep it as short as possible. Web3 should be in 
it, as well, to give an example. I'm -0 to add any little company-funded 
piece of code into the CREDITS file, since it would become a marketing 
tool then.

/Steven
--
Steven Noelshttp://outerthought.org/
Outerthought - Open Source Java  XMLAn Orixo Member
Read my weblog athttp://blogs.cocoondev.org/stevenn/
stevenn at outerthought.orgstevenn at apache.org


Re: Renaming Woody to Cocoon Forms ?

2003-10-10 Thread Steven Noels
Christopher Oliver wrote:

But as far as the continuation and flowscript support for this goes, I 
think refactoring is the proper term. IMO the hack to support 
${continuation.id} and the whole JS (woody.js, woody2.js) interface 
needs to be redesigned.
+1, and a big thank you for this cool-headed remark.

/Steven
--
Steven Noelshttp://outerthought.org/
Outerthought - Open Source Java  XMLAn Orixo Member
Read my weblog athttp://blogs.cocoondev.org/stevenn/
stevenn at outerthought.orgstevenn at apache.org


Re: Track feature requests in bugzilla?

2003-10-10 Thread Joerg Heinicke
Bertrand Delacretaz wrote:
Another issue is the configuration of bugzilla itself. Isn't it 
customizable? Furthermore more recent versions offer more options.


I bet ...but doesn't Bertrand know? :)


Newer versions of bugzilla use HTML templates which can make it look 
much nicer if that's the problem. I think it is part of the problem if 
we're going to make more serious use of bugzilla, there's no excuse for 
looking bad on the web today.

Also, the query form in 2.16 has a better layout which helps a lot when 
you start using it.
Good to hear.

Finally, saved queries help a lot, you can create the 4-5 queries that 
you need regularly and then mostly forget about the query page.
I don't know if they exist in the 2.14.2 version that we're using, but 
if they are they seem to be disabled (Pier?).
No, I'm using them heavily. One for Cocoon, one for XSLTC, ... And they 
are simple to use with an URL like 
http://nagoya.apache.org/bugzilla/buglist.cgi?cmdtype=runnamednamedcmd=Cocoon. 
Why do you think they are disabled?

An easy workaround if saved queries cannot be enabled for some reason is 
to create more links like the patch queue and open bugs links that 
we have on the web and wiki. What happened in the last X days and 
what's unassigned come to mind and are easy to do.

But I agree with Andrew and Jeff that the current bugzilla works - it 
might not be pretty (it is ugly actually), and is lacking in ways of 
classifying issue types, but it does the job if one is willing to use it.

I'm not sure about switching to another tracking system. The new toy 
syndrom could help people make more use of it, OTOH if people are not 
willing to use it they will not and we will only have wasted time. A 
bugzilla upgrade might be good though.

My suggestion would be to stay with bugzilla until the next 1-2 
FirstFridays at least  and see how we do. Until then, have a vote on 
where we want to track feature requests, bugzilla or wiki will both work 
for these IMHO, this is not such a big deal.
+1

Joerg



Re: mounting blocks question

2003-10-10 Thread Stefano Mazzocchi
On Friday, Oct 10, 2003, at 04:43 Europe/Rome, Geoff Howard wrote:

We decided that wiring.xml would have entries like:

mount/mail//mount

How would this work for using hostname based mounting?
no. this concerns applies to the servlet hosting environment, there is 
nothing we can do from this side of the Servlet API fence to trigger 
virtual host configuration.

Use case:
http://mail.mydomain.com
http://www.mydomain.com
Two different applications, same cocoon instance.

(mail block)
mount host=mail.mydomain.com//mount
??

 (main site block)
mount host=www.mydomain.com//mount
... (authentication block)

mount/login/mount (defaults to all hosts)
single sign-on, right?

yeah, thought about it extensively but no, we can't do it from this 
side, unless we hook to a particular servlet container and we modify 
its configuration files directly and not thru the servlet API.

and in a two-tier environment (think apache+tomcat), this is not even 
enough, since the virtual hosts are configured in httpd.conf.

Is it possible to achieve the same functionality? yeah, you bet, with a 
little tuning of httpd.conf, a few aliases and/or mod_rewrite URI 
rewriting.

--
Stefano.


FYI: DocSynch as a collaborative editing tool?

2003-10-10 Thread Bertrand Delacretaz
Just found out about it at
  http://placebo.hpi.uni-potsdam.de/~alexklim/#docsynch
and
  http://trieloff.dyndns.org/archive/000427.html
It is a JEdit plugin and uses IRC (and DCC - what's this?) to exchange 
data, so we wouldn't need additional communications tech or service 
registrations.

I have to run to bread-and-butter work and won't be able to test it 
soon, but if someone wants to try, keep us posted!

-Bertrand



Re: Renaming Woody to Cocoon Forms ?

2003-10-10 Thread Stefano Mazzocchi
On Friday, Oct 10, 2003, at 09:15 Europe/Rome, Steven Noels wrote:

Bearing in mind the amount of work that requires a _real_ renaming, 
like changing package names, namespaces and all that - who's going to 
do that?
I would suggest we do that in Cocoon 2.2

For the users, a planned incompatibility is not so bad, expecially if 
it's just a matter of doing namespace changes between (very few users 
care about package names).

thoughts?

--
Stefano.


Re: Renaming Woody to Cocoon Forms ?

2003-10-10 Thread Steven Noels
Stefano Mazzocchi wrote:

On Friday, Oct 10, 2003, at 09:15 Europe/Rome, Steven Noels wrote:

Bearing in mind the amount of work that requires a _real_ renaming, 
like changing package names, namespaces and all that - who's going to 
do that?


I would suggest we do that in Cocoon 2.2

For the users, a planned incompatibility is not so bad, expecially if 
it's just a matter of doing namespace changes between (very few users 
care about package names).

thoughts?
Fine with me - it's a community thing now (which we will actively try to 
support, of course).

/Steven
--
Steven Noelshttp://outerthought.org/
Outerthought - Open Source Java  XMLAn Orixo Member
Read my weblog athttp://blogs.cocoondev.org/stevenn/
stevenn at outerthought.orgstevenn at apache.org


Re: [RT] what cocoon forms lack

2003-10-10 Thread Stefano Mazzocchi
On Friday, Oct 10, 2003, at 09:27 Europe/Rome, Bertrand Delacretaz 
wrote:

(commenting on the editor stuff only)

Le Jeudi, 9 oct 2003, à 23:28 Europe/Zurich, Stefano Mazzocchi a écrit 
:

...I see two potential types of editor:

 - plain text
 - stuctured text
Rich text is one of the potential structured text.

I dislike textarea as a style if an string input field. it doesn't 
feel right: a textarea is the style of an editor
OTOH being able to edit (wiki-like?) text from a plain textarea must 
be possible as a fallback for when people don't have the right 
browser, mobile stuff, etc. It is certainly easy to do but must be 
taken into account.
Sure. but you missed my point. The critic was not about HTML textarea 
but about where the textarea concept resides on woody. Today, woody 
believes that textarea is a style of a string input widget. I dislike 
this. I think textarea is a mode of a yet-to-be-there editor 
widget, exactly for the reasons you mention above and because widget 
should be separate for their use, not for the output they create.

...In linotype you have Wysiwig and markup, introducing a wiki mode 
is in my todo list.
Do you envision a server-side format converter for this?
no, client-side. I plan to write javascript to do this, so that I'm 
able to move back and forward from a wiki view, a markup view and a 
WYSIWIG view from the client side.

I'm asking because a good birdirectional wiki-to-xhtml conversion 
component in java would be very useful. The current chaperon stuff 
doesn't provide this.
a javascript wiki2xhtml parser would be just as functional and can be 
used on both sides (even if would require some tricky things, since in 
the client side the dom is already there, exposed)

...I would love to have linotype as a cform widget with pluggable 
editing modes that share content: so that you can write your wiki 
text, then click on the wysiwig tag and edit content like that, back 
and forward, you can cut/paste stuff in and out

now, what do you think?
I like this - if this is used for our docs later on, being able to 
cut/paste wiki stuff in and out would be very useful for offline work.
yep, the gt-notes-editing experience showed me this as well!

--
Stefano.


Re: cvs commit: cocoon-2.1/src/webapp/WEB-INF cocoon.xconf

2003-10-10 Thread Andrew Savory
On Thu, 9 Oct 2003, Antonio Gallardo wrote:

  antonio 2003/10/09 13:12:35
 
Modified:src/webapp/WEB-INF cocoon.xconf
Log:
Fixing bug related to woody form handling posted
by Carlos Chávez. Bruno Dumon suggested the fix
and it works back again.
 
Revision  ChangesPath
1.31  +1 -1  cocoon-2.1/src/webapp/WEB-INF/cocoon.xconf
 
Index: cocoon.xconf
===
  RCS file: /home/cvs//cocoon-2.1/src/webapp/WEB-INF/cocoon.xconf,v
  retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- cocoon.xconf  6 Oct 2003 16:10:55 -   1.30
+++ cocoon.xconf  9 Oct 2003 20:12:35 -   1.31
-parameter name=reuse-parsers value=true/
+parameter name=reuse-parsers value=false/

 Next time we need to be more carefully :)

 Best Regards,

 Antonio Gallardo






Andrew.

-- 
Andrew Savory [EMAIL PROTECTED]


Re: [RT] Separation of Blocks and Avalon

2003-10-10 Thread Stefano Mazzocchi
On Friday, Oct 10, 2003, at 09:44 Europe/Rome, Carsten Ziegeler wrote:

I'm more and more thinking that we should do one thing after the other:
first creating our blocks and than moving to fortress or merlin.
Or the other way round, if someone things that it makes more sense.
But we should avoid doing both at the same time.
+1000

I mean, we are currently happy with ECM - it works, it's stable and the
only real concern we have is the big cocoon.xconf which is solved with
blocks anyway. (I don't want to say that fortress/merlin are not stable
with this).
Amen.

--
Stefano.


Re: Track feature requests in bugzilla?

2003-10-10 Thread Bertrand Delacretaz
Le Vendredi, 10 oct 2003, à 10:11 Europe/Zurich, Joerg Heinicke a écrit  
:

Bertrand Delacretaz wrote:

...Finally, saved queries help a lot, you can create the 4-5 queries  
that you need regularly and then mostly forget about the query page.
I don't know if they exist in the 2.14.2 version that we're using,  
but if they are they seem to be disabled (Pier?).
No, I'm using them heavily. One for Cocoon, one for XSLTC, ... And  
they are simple to use with an URL like  
http://nagoya.apache.org/bugzilla/ 
buglist.cgi?cmdtype=runnamednamedcmd=Cocoon. Why do you think they  
are disabled?
You mean saving bookmarks to queries, right?
In 2.16 you can actually save a query, give it a name and it can appear  
as a link at the bottom of the bugzilla page when you're logged in,  
it's much more convenient and stays on the server.

According to http://nagoya.apache.org/bugzilla/queryhelp.cgi#therest  
this seems to exist in our version, but I don't see the corresponding  
fields on the query form. Am I overlooking something?

-Bertrand


RE: [site docs] build failing

2003-10-10 Thread Carsten Ziegeler
Building the docs failed because plan/changes.rss could not
be generated (no pipeline found).
I just checked in a hack to the doc sitemap, so this pipeline
is now found and building the docs, especially the site docs
works again.

Does anyone know where plan/changes.rss is used and why?

Carsten


Re: [RT] what cocoon forms lack

2003-10-10 Thread Sylvain Wallez
Stefano Mazzocchi wrote:

Thanks to the great energy that Sylvain is able to put into things, we 
now have a community consensus on making woody the official cocoon 
form framework.

On the trip back from the GT, I spent some time talking to David 
Nuescheler. A while ago, I suggested him to take a look at linotype 
and he liked the concept and told his guys to use it.

On the train, he told me: you know, the idea of making linotype a 
woody widget is not so far off as it seems, we did our own form 
framework and editing framework and came up with nothing that could 
distinguish the two, so we are making an effort to merge the two.

This triggered an incredible amount of thinking... during the hours 
that took me to get back and thanks to sylvain's handouts, I was able 
to have a solid reference for my thinking.

   - o -

There are two widgets that cforms are missing:

 - editor
 - uploader


Hey, you know what, some of the people that went to me after my talk 
proposed just the same ;-)

I see two potential types of editor:

 - plain text
 - stuctured text
Rich text is one of the potential structured text.

I dislike textarea as a style if an string input field. it doesn't 
feel right: a textarea is the style of an editor.


Mmmh... What I understand above is that you distinguish two types of 
string inputs:
- single line inputs that go through a regular input
- multi-line strings or structured documents that go through an editor 
widget of which textarea is a particular representation (styling, in 
the current terminology). Am I right?

This also calls for an additional built-in field datatype: xml, that 
would automatically parse the input string upon submit. We can also have 
specialized validators for this datatype that check that the document is 
valid according to some kind of schema.

I also see two potential types of uploaders:

 - active
 - passive
Passive uploaders are the usual ones, the ones with a input field and 
a browse button. (normally native widgets that are not CSS modifiable)

Active uploaders are the one that react on the content being uploaded 
and show it (like the image uplaoder in linotype).


Active upload is really cool.

An associated need for upload, along with drag'n dropping images in an 
editor, is for generic binary attachements to a document (in the general 
meaning of document). Graphically, this could be a drop zone 
associated to the (growing) list of file names.

The idea is the following: both widgets make available to the 
controller (after having been processed), an object model that 
contains the content. The template generators should be able to 
process the object model of a structured text and crawl it 
transparently to generate SAX events.


This calls again for the xml datatype, with an associated set of 
converters (xml/wiki/slop parsers).

- o -

Note, however that these widgets don't resolve the need for a 
semi-structured editing capabilities of the page (a-la 
contentEditable), but they go a pretty long way to provide capabilities.

Another interesting feature would be providing different modes for 
the editor, just like different tab panes that react on the content.

In linotype you have Wysiwig and markup, introducing a wiki mode is in 
my todo list.

I would love to have linotype as a cform widget with pluggable editing 
modes that share content: so that you can write your wiki text, then 
click on the wysiwig tag and edit content like that, back and forward, 
you can cut/paste stuff in and out.


Implementation-wise, having multiple simultaneous formats client-side 
may be require tricky javascript development. Since we must have the 
parsers for these formats server-side, we can use the submit-on-change 
feature so that clicking on a format tab does a round-trip to the server 
to convert the format.

now, what do you think? 


I think: kewl ;-)

Sylvain

--
Sylvain Wallez  Anyware Technologies
http://www.apache.org/~sylvain   http://www.anyware-tech.com
{ XML, Java, Cocoon, OpenSource }*{ Training, Consulting, Projects }
Orixo, the opensource XML business alliance  -  http://www.orixo.com



Re: FYI: DocSynch as a collaborative editing tool?

2003-10-10 Thread Michael Melhem
On Fri, Oct 10, 2003 at 10:13:04AM +0200, Bertrand Delacretaz wrote:
 Just found out about it at
   http://placebo.hpi.uni-potsdam.de/~alexklim/#docsynch
 and
   http://trieloff.dyndns.org/archive/000427.html
 
 It is a JEdit plugin and uses IRC (and DCC - what's this?) to exchange 
 data, so we wouldn't need additional communications tech or service 
 registrations.

DCC stands for Direct Client Communication, allowing you to bypass the
irc server. its used for sending and recieving files between users.

Michael
 
 I have to run to bread-and-butter work and won't be able to test it 
 soon, but if someone wants to try, keep us posted!
 
 -Bertrand
 
 
 


Re: Renaming Woody to Cocoon Forms ?

2003-10-10 Thread Sylvain Wallez
Christopher Oliver wrote:

Sylvain Wallez wrote:

snip

I volunteer for this. This move should also be the occasion of doing 
the refactoring (rather a polishing, actually) I proposed in august 
so that we quickly have some stable APIs.


But as far as the continuation and flowscript support for this goes, I 
think refactoring is the proper term. IMO the hack to support 
${continuation.id} and the whole JS (woody.js, woody2.js) interface 
needs to be redesigned. 


+1

Sylvain

--
Sylvain Wallez  Anyware Technologies
http://www.apache.org/~sylvain   http://www.anyware-tech.com
{ XML, Java, Cocoon, OpenSource }*{ Training, Consulting, Projects }
Orixo, the opensource XML business alliance  -  http://www.orixo.com



RE: [GT2003] Thank you

2003-10-10 Thread Arje Cahn
Here's another Very Late Thank You to all at the Cocoon GetTogether!
Special thanks to Steven for all his hard work and of course Marc, Bruno and the Orixo 
gang as a whole who made this possible. I had fun. We've been brutally abusing the 
flamish hospitality, and I hope to do so again next year!

Regards,

Arjé Cahn

Hippo Webworks
Grasweg 35
1031 HW Amsterdam
The Netherlands
Tel  +31 (0)20 6345173 
Fax +31 (0)20 6345179
-
[EMAIL PROTECTED] / www.hippo.nl
--


Re: ResolverImpl test case broken again?

2003-10-10 Thread David Crossley
Ugo Cei wrote:
 David Crossley wrote:
  I tested your patch and that works fine on my system.
  Well done, i believe that you have fixed it. Would you please commit.
 
 I'll do this ASAP.
 
  So we can leave the resolver test cases there until we find something
  better to do with them. We really need to clean up all of the testcases.
 
 Having slept over the issue (not much, just a little more than 4 hours 
 :-(), these are my thoughts:
 
 We should strive for 100% test coverage. Removing a test case without 
 removing the class being tested is no good, in my book.
 
 Should we remove the ResolverImpl class? As far as I can see, it's not 
 used anywhere in our codebase, apart from the test case. On the other 
 hand, it's not @deprecated, even though it implements a deprecated 
 interface. Should we call a vote on the issue?

If no-one says anything in the next few days, then i will remove the
resolver testcases. They served their purpose here in Cocoon while
developing the entity-resolver stuff, to ensure that it worked on
all platforms.

--David




Re: Renaming Woody to Cocoon Forms ?

2003-10-10 Thread Sylvain Wallez
Carsten Ziegeler wrote:

Sylvain Wallez wrote:
 

I volunteer for this. This move should also be the occasion of doing the 
refactoring (rather a polishing, actually) I proposed in august so that 
we quickly have some stable APIs.
   

Just curious, when are you planning to do so?
 

I should be starting this by the end of next week. The start of the week 
will be occupied giving a... Flowscript  Woody training!!!

Sylvain

--
Sylvain Wallez  Anyware Technologies
http://www.apache.org/~sylvain   http://www.anyware-tech.com
{ XML, Java, Cocoon, OpenSource }*{ Training, Consulting, Projects }
Orixo, the opensource XML business alliance  -  http://www.orixo.com



Re: [RT] what cocoon forms lack

2003-10-10 Thread Bertrand Delacretaz
Le Vendredi, 10 oct 2003, à 10:21 Europe/Zurich, Stefano Mazzocchi a 
écrit :
...I dislike textarea as a style if an string input field. it 
doesn't feel right: a textarea is the style of an editor
OTOH being able to edit (wiki-like?) text from a plain textarea must 
be possible as a fallback for when people don't have the right 
browser, mobile stuff, etc. It is certainly easy to do but must be 
taken into account.
Sure. but you missed my point. The critic was not about HTML 
textarea but about where the textarea concept resides on woody. 
Today, woody believes that textarea is a style of a string input 
widget. I dislike this. I think textarea is a mode of a 
yet-to-be-there editor widget, exactly for the reasons you mention 
above and because widget should be separate for their use, not for the 
output they create.
ok, got it now ;-)


...In linotype you have Wysiwig and markup, introducing a wiki mode 
is in my todo list.
Do you envision a server-side format converter for this?
no, client-side. I plan to write javascript to do this, so that I'm 
able to move back and forward from a wiki view, a markup view and a 
WYSIWIG view from the client side.
Why not server-side java?
Is it a design or implementation concern?
Client-side avoids a round-trip but introduces client dependencies 
which could be avoided.
And being able to write pluggable format converters in java for 
Linotype editing would be cool. Not sure about javascript.



...I'm asking because a good birdirectional wiki-to-xhtml conversion 
component in java would be very useful. The current chaperon stuff 
doesn't provide this.
a javascript wiki2xhtml parser would be just as functional and can be 
used on both sides (even if would require some tricky things, since in 
the client side the dom is already there, exposed)
hmm..back to DOM server-side?
(but if you're writing the code and I'm not, who am I to argue ;-)

...I like this - if this is used for our docs later on, being able to 
cut/paste wiki stuff in and out would be very useful for offline  work.
yep, the gt-notes-editing experience showed me this as well!
I'm glad to hear this!

-Bertrand

(trying hard to get back to this bread-and-butter stuff ;-)


[RT] Updating the website

2003-10-10 Thread Carsten Ziegeler
Due to my nice(?) rearranging of the docs we are not able
to update our website without breaking some external links.
And this is (to say it friendly) very bad.

But we have updated/new docs that should be published asap. So
how can we manage this?

Stefano had an impressing (wild) idea at the GT which sounds
very cool, but will unlikely not happen today or tomorrow.
I personally wanted to update the site asap, at least with
the next release for 2.1.3 - our great bug fix release.

I wanted to start this RT to discuss some possibilities, so
here are some:

a) I revert the structural changes (cause in the end it's my
   fault)
b) We update and don't care about external links
c) We update and care a little bit about external links and
   redirect a 404 to let's say the start page

Thoughts?

Carsten 



Re: Track feature requests in bugzilla?

2003-10-10 Thread David Crossley
Bertrand Delacretaz wrote:
 Joerg Heinicke a écrit:
  Bertrand Delacretaz wrote:
 
  ...Finally, saved queries help a lot, you can create the 4-5 queries  
  that you need regularly and then mostly forget about the query page.
  I don't know if they exist in the 2.14.2 version that we're using,  
  but if they are they seem to be disabled (Pier?).
 
  No, I'm using them heavily. One for Cocoon, one for XSLTC, ... And  
  they are simple to use with an URL like  
  http://nagoya.apache.org/bugzilla/
  buglist.cgi?cmdtype=runnamednamedcmd=Cocoon. Why do you think they  
  are disabled?
 
 You mean saving bookmarks to queries, right?
 In 2.16 you can actually save a query, give it a name and it can appear  
 as a link at the bottom of the bugzilla page when you're logged in,  
 it's much more convenient and stays on the server.
 
 According to http://nagoya.apache.org/bugzilla/queryhelp.cgi#therest  
 this seems to exist in our version, but I don't see the corresponding  
 fields on the query form. Am I overlooking something?

You must be missing it. I use that feature all the time. I have
a few queries stored in my Bugzilla user space: cocoon2-outstanding
and cocoon2-major

Look for the Remember this query, and name it feature on the query
page.

I am quite happy with using Bugzilla and see no need to change.

--David




Re: Track feature requests in bugzilla?

2003-10-10 Thread Joerg Heinicke
Bertrand Delacretaz wrote:

...Finally, saved queries help a lot, you can create the 4-5 queries  
that you need regularly and then mostly forget about the query page.
I don't know if they exist in the 2.14.2 version that we're using,  
but if they are they seem to be disabled (Pier?).
No, I'm using them heavily. One for Cocoon, one for XSLTC, ... And  
they are simple to use with an URL like  
http://nagoya.apache.org/bugzilla/ 
buglist.cgi?cmdtype=runnamednamedcmd=Cocoon. Why do you think they  
are disabled?
You mean saving bookmarks to queries, right?
In 2.16 you can actually save a query, give it a name and it can appear  
as a link at the bottom of the bugzilla page when you're logged in,  
it's much more convenient and stays on the server.
No, I have different queries in my footer. I have to login to use them. 
Nothing about bookmarks.

According to http://nagoya.apache.org/bugzilla/queryhelp.cgi#therest  
this seems to exist in our version, but I don't see the corresponding  
fields on the query form. Am I overlooking something?
If I go to http://nagoya.apache.org/bugzilla/query.cgi I have this part 
of the form at the end of the page above the footer.

Joerg



Re: [RT] Separation of Blocks and Avalon

2003-10-10 Thread Ryan Hoegg
Stefano Mazzocchi wrote:

On Friday, Oct 10, 2003, at 09:44 Europe/Rome, Carsten Ziegeler wrote:

I'm more and more thinking that we should do one thing after the other:
first creating our blocks and than moving to fortress or merlin.
Or the other way round, if someone things that it makes more sense.
But we should avoid doing both at the same time.


+1000

In that case, is it possible to incrementally develop the blocks in the 
2.1 repository while Berin works on the container in the soon-to-be 2.2 
repository?



Re: Track feature requests in bugzilla?

2003-10-10 Thread Bertrand Delacretaz
Le Vendredi, 10 oct 2003, à 10:41 Europe/Zurich, David Crossley a écrit 
:
...You must be missing it. I use that feature all the time. I have
a few queries stored in my Bugzilla user space: cocoon2-outstanding
and cocoon2-major
Look for the Remember this query, and name it feature on the query
page
crawling-under-the-table
err..blush...I was not logged in to bugzilla ;-)
It's this age thing again I guess, sorry for the noise.
/crawling-under-the-table
I am quite happy with using Bugzilla and see no need to change.
so am I, except for a non-urgent upgrade to a newer version.

-Bertrand


Re: [RT] Using modifiers within Cocoon components

2003-10-10 Thread Stephan Michels

Puh, finally arrived at home. I took some days to visit the belgium
coast.

The name 'modifiers' comes from the java grammar, and include more
than private and public. But if we talking only about accessibility,
then @access is ok.

On Thu, 9 Oct 2003, Sylvain Wallez wrote:

 Geoff Howard wrote:

  I like access=private and access=public.
 
  - Which is the default if none is specified? (public)
 
  Hmmm, on second thought,
 
  uri access : @internal-only
  block access : @access
 
  are these two orthoganal concepts named deceptively in the case of
  pipelines?  @access is not meant to imply whether a pipeline can be
  accessed but whether it can be extended or used outside the block.


 I think your analysis is right: @internal-only is related to the origin
 of the request, while @access is about inter-block relations. It may
 make sense to have a pipeline with internal-only=true and
 access=public, meaning it's not visible from the non-Cocoon world
 (i.e. only through cocoon: requests), but that other blocks can use it.

  If we never envision anything other than private/public would
  something like block-private=true convey more meaning?
  block-access=private might do the same but leave freedom for other
  than private/public.


 Blocks can be extended, and so having protected along with public
 and private may be needed. I don't see a need for package
 visibility, though.

What about using the access modifier 'protected' for internal-only
pipelines

map:pipeline access=private   - Accessible only by the current
 sitemap
map:pipeline access=public- Accessible from outside of Cocoon
map:pipeline access=protected - Accessible by all blocks, but not
 outside of Cocoon

BTW, shouldn't the 'root' block decide which resources are
public and which are private?! So that everything is protected, except
the 'root' block exposes them.

Stephan.



Re: FYI: DocSynch as a collaborative editing tool?

2003-10-10 Thread Sylvain Wallez
Bertrand Delacretaz wrote:

Just found out about it at
  http://placebo.hpi.uni-potsdam.de/~alexklim/#docsynch
and
  http://trieloff.dyndns.org/archive/000427.html
It is a JEdit plugin and uses IRC (and DCC - what's this?) to exchange 
data, so we wouldn't need additional communications tech or service 
registrations. 


Wow, looks cool! And an Eclipse plugin is planned also!

Sylvain

--
Sylvain Wallez  Anyware Technologies
http://www.apache.org/~sylvain   http://www.anyware-tech.com
{ XML, Java, Cocoon, OpenSource }*{ Training, Consulting, Projects }
Orixo, the opensource XML business alliance  -  http://www.orixo.com



Re: [RT] Finishing the first phase of block design

2003-10-10 Thread Stefano Mazzocchi
On Friday, Oct 10, 2003, at 04:01 Europe/Rome, Geoff Howard wrote:

Stefano Mazzocchi wrote:

On Wednesday, Oct 8, 2003, at 04:50 Europe/Rome, Geoff Howard wrote:
Stefano Mazzocchi wrote:

I have updated the block design documents on the wiki. Changes were:
...

A few things are left to decide:
 1) the block metadata information in the block.xml file
  see http://wiki.cocoondev.org/Wiki.jsp?page=BlocksCob
 2) how blocks expose classloading to other blocks
...

Exposing classes

Stephen proposed to separate the classes to expose in a different  
jar and expose that. I like this. It's simple and effective.
But instead of declaring classloaders or classpaths in the blocks,  
I propose to extend the block FS layout so that we have
for individual classes and resources:
 /classes
 /classes/public
 /classes/private
for jars:
 /lib
 /lib/public
 /lib/private
Hmmm.  That is quite different than what one would expect from the  
WAR paradigm, no?  Would

COB-INF/[classes|lib]
COB-INF/public/[classes|lib]
or

COB-INF/private/[classes|lib]
COB-INF/public/[classes|lib]
be any better?
This might suggest the concept that private is the location of all  
the things that are private so
 private/lib
means I have libraries in the private section, so maybe I can put  
something else as well to have it protected? while
 lib/private
means these are the private libraries... but doesn't say anything  
about non-lib things. I still like this approach better, even if it  
moves away from the WAR paradigm (which is not a big deal, IMO, since  
blocks are different enough already)
Ok, that's a good point.  I have a parallel concern that something like

COB-INF/classes/com/mypackage/whyisntitfound/NotFound.class

or

package public.com.myconfused.package
public Class StillNotFound {...
will pop up regularly on the users list.
hmmm, don't think so, don't see many users actually adding their own  
single classes to those blocks and then deploy. I think they will put  
their prepackaged jars in there. but hey, you might be right.

One more idea to try to avert potential confusion.

COB-INF/private-lib/
COB-INF/private-classes/
COB-INF/public-lib/
COB-INF/public-classes/
?
I'm -0 on this, don't see the need, but I see your point.

- Not found resources will have to go through every pipeline to  
determine that it's not found.  With fallback behavior due to  
polymorphism this gets worse.
I fail to see this, can you explain why you think this is the case?
sitemap references:
block:external-skin:/stylesheets/news2html.xslt
block manager has external-skin -  
http://mycompany.com/skins/corporate/34.3.345
 - extends -
http://yetanothercompany.com/skins/fancy/1.2.2

checks WEB-INF/blocks/384938958499/sitemap.xmap (by the way, the Cob  
samples at the wiki don't have sitemaps for the skins blocks which  
would presumably need them to expose their xslt in the example right?)
no, if the sitemap is not explicitly exposed, then the block manager  
will default to sitemap.xmap in the root. if *that* is not present,  
than the block does not expose resources and the block: protocol would  
return a 404 or trigger an exception.

If that sitemap doesn't override /stylesheets/news2html.xslt, every
pipeline in that sitemap needs to be checked _then_ block manager goes  
on to  
WEB-INF/blocks/how-does-the-block-wiring-handle-blocks-extended-but- 
not-otherwise-used/sitemap.xmap

if there are several levels of extension, this could be a long process.
true

But now a worse thought comes to mind:

suppose http://yetanothercompany.com/skins/fancy/1.2.2 has defined

map:match pattern=stylesheets/*.xslt
  map:read src=styles/{1}.xslt/
/map:match
but http://mycompany.com/skins/corporate/34.3.345 only wants to
override /stylesheets/news2html.xslt and /stylesheets/another.xslt
if it is allowed it do

map:match pattern=stylesheets/*.xslt
  map:read src=mystyles/{1}.xslt/
/map:match
then we must make the block manager and sitemap engine have a new  
behavior: if a match exists, but the source is not actually found,  
proceed to the super-block etc.
nono, inheritance works as the URI matching level, not at the resource  
level. If you match the URI and then you failed to provide a resource,  
you get a 404. So, at least, you know where you are.

That's a mess, but so is having to set up a whole series of identical  
pipelines for every image, stylesheet, etc you need to override from a  
super-block, isn't it?
You can use regexp matching. It's not that bad.

I don't picture extension to change *everything* inside the block, but  
just a few details. anti-patterns will emerge and verbosity of the  
sitemap would reduce the change of abusing block extension.

Now, perhaps this could be handled in other ways by using selectors  
instead of wildcards in matchers, but this could make writing a block  
a little finicky.
i think regexp matching is perfect for this

 If we decide to go with existing semantics with no explicit list of  
provided or overridden 

RE: FYI: DocSynch as a collaborative editing tool?

2003-10-10 Thread Arje Cahn
I'm trying to get it running... Does anyone care to join me on #cocoon and give it a 
try?

Arje

 -Original Message-
 From: Sylvain Wallez [mailto:[EMAIL PROTECTED]
 Posted At: vrijdag 10 oktober 2003 10:50
 Posted To: Cocoon Dev List
 Conversation: FYI: DocSynch as a collaborative editing tool?
 Subject: Re: FYI: DocSynch as a collaborative editing tool?
 
 
 Bertrand Delacretaz wrote:
 
  Just found out about it at
http://placebo.hpi.uni-potsdam.de/~alexklim/#docsynch
  and
http://trieloff.dyndns.org/archive/000427.html
 
  It is a JEdit plugin and uses IRC (and DCC - what's this?) 
 to exchange 
  data, so we wouldn't need additional communications tech or service 
  registrations. 
 
 
 Wow, looks cool! And an Eclipse plugin is planned also!
 
 Sylvain
 
 -- 
 Sylvain Wallez  Anyware Technologies
 http://www.apache.org/~sylvain   http://www.anyware-tech.com
 { XML, Java, Cocoon, OpenSource }*{ Training, Consulting, Projects }
 Orixo, the opensource XML business alliance  -  http://www.orixo.com
 
 
 


[OT] create thumbnails of html

2003-10-10 Thread Mats Norén
I know this is slightly off-topic but does anyone on the list now of an 
open source component that can create an image thumbnail of a html page 
like the HTML2JPG blackbox component?
http://www.html2jpg.com/

I thought about doing some weird stuff with pipelines in cocoon to 
achieve this but it seems to much of a hassle.

/Regards Mats





Apache Newsletter - volunteers?

2003-10-10 Thread Bertrand Delacretaz
I think the deadline for  
http://nagoya.apache.org/wiki/apachewiki.cgi?ApacheNewsletterDrafts/ 
Issue2 is soon, don't have time to write ATM but it might  be good if  
someone could write about the GT.

-Bertrand



Re: [RT] Finishing the first phase of block design

2003-10-10 Thread Stephan Michels


On Thu, 9 Oct 2003, Stefano Mazzocchi wrote:


 On Wednesday, Oct 8, 2003, at 04:50 Europe/Rome, Geoff Howard wrote:

  Stefano Mazzocchi wrote:
 
  I have updated the block design documents on the wiki. Changes were:
 
  ...
 
  A few things are left to decide:
   1) the block metadata information in the block.xml file
see http://wiki.cocoondev.org/Wiki.jsp?page=BlocksCob
   2) how blocks expose classloading to other blocks
   - o -
  Descriptive Block metadata
  --
  The descriptive block metadata that we currently include is:
   name***/name
   description href=...***/description
   license href=.../***/license
   author href=...***/author
 
  +1
 
  Andreas suggested version number which is really handled already in
  the block id and release date.  I think a date though may be a useful
  additional piece of info.

 Good point.

IMHO, I would try first a solution, which doesn't introduce a new
descriptor. In a know german XML magazin, Cocoon was descriped a
configuration hell, and as a anti pattern using XML as
configuration format.

So my proposal would be to start small, and if there isn't a way
to come forward with the current possibilities, then
we could introduce a new descriptor file beside
cocoon.xconf/sitemap.xmap/web.xml etc.

  Exposing classes
  
  Stephen proposed to separate the classes to expose in a different jar
  and expose that. I like this. It's simple and effective.
  But instead of declaring classloaders or classpaths in the blocks, I
  propose to extend the block FS layout so that we have
  for individual classes and resources:
   /classes
   /classes/public
   /classes/private
  for jars:
   /lib
   /lib/public
   /lib/private
 
  Hmmm.  That is quite different than what one would expect from the WAR
  paradigm, no?  Would
 
  COB-INF/[classes|lib]
  COB-INF/public/[classes|lib]
 
  or
 
  COB-INF/private/[classes|lib]
  COB-INF/public/[classes|lib]
 
  be any better?

Could you please explain, why we need to separate the classes and lib into
private and public. For the developers POV, it will make the development
more complicated, and doesn't see any benefit.

  Exposing Resources
  --
 
  I'm adding this because my brain is still a little unsure about this.
  So far, we've said that file resources (an xsl for example)
 
  1) need to be exposed via a sitemap pipeline, even if only by a reader
  2) are not anywhere declared explicitly (except in the pipeline of
  course)
  3) are not distinguised from resources meant to be private by any
  formal semantics, though this information could be conveyed
  human-to-human in any block docs (blocs? blockumentation? ;) ).
 
  Here are my oustanding questions:
 
  - Will we regret requiring the overhead of pipeline setup (runtime I
  mean) for blocks which expose a great deal of otherwise static
  resources?

 could be. remember though that the block: protocol will be caching
 friendly, so we might even gain performance.

  - Not found resources will have to go through every pipeline to
  determine that it's not found.  With fallback behavior due to
  polymorphism this gets worse.

 I fail to see this, can you explain why you think this is the case?

  - Will not explicitly declaring which resources are meant to be public
  cause trouble for block implementors and extenders?

 ?? well, in the sitemap I can be very precise on what I want to expose.
 and everything else is not exposed. the sitemap is like a virtual file
 system description, powerful enough to describe all possible systems.

 If you have

 pipeline block-access=public
   match pattern=**
read src=public/{1}/
   /match
 /pipeline

 than the contract moves at the file system level, but that's up to you
 to decide and a block extender can do

 pipeline block-access=public
   match pattern=stylesheet/layout2page.xslt
generate type=sql src=layout.xml/
transform src=layout2stylesheet.xslt/
serialize type=xml/
   /match
 /pipeline

 to provide extension that is procedural (but without exposing, for
 example layout.xml and layout2stylesheet.xslt which are just used
 internally)

Yes, I like that. This is the solution, which comes first in my mind.

Stephan.



Re: [RT] Virtual components and JXTemplate

2003-10-10 Thread Stephan Michels



On Thu, 9 Oct 2003, Sylvain Wallez wrote:

 Stephan Michels wrote:

 On Tue, 7 Oct 2003, Sylvain Wallez wrote:
 AFAIU, the use of JXTemplate as a generator allows the template to be
 pre-analyzed and stored into the cache, thus allowing a greater
 performance. This cannot be achieved with the transformer.
 
 There are use cases where templates are dynamically computed. In these
 cases, you can either use the JXTemplate transformer or use the
 generator with a cocoon: source. In that latter case, you also benefit
 of the fact that the cocoon: source may be cached as well.
 
 
 
 Yes, but the problem is that the output of the JXTemplate is high
 dynamic, and isn't cachable, so I make most of transformations before
 like i18n and some other.
 

 That's why I was suggesting to use a cocoon: source as the input of
 JXTemplateGenerator: this allows the template to be cached. The other
 solution is to use CachingPointPipeline.

Hmm, yes will be a solution, but like the following case more

map:generate type=file
map:transform type=i18n
map:transform type=xsl src=..
map:transform type=xsl src=..
map:transform type=jx
map:transform type=xsl src=..
map:serialze

instead of

map:generate type=file
map:transform type=i18n
map:transform type=xsl src=..
map:transform type=xsl src=..
map:serialze type=xml

map:generate type=jx src=cocoon:/whatever
map:transform type=xsl src=..
map:serialze

 There is also some other thing, the newest jvm are optimized to dispatch
 great numbers of small classes, like the classes, which be used to store
 the events.
 

 Sorry, what do you mean by dispatch great number of small classes ? Is
 it that about the handling of small short-lived objects ?

Yes, so caching these event classes gives more problems than benefits.
That why sometimes pool of objects are slower than the instantiation.
But just a thought, Stephan.



Re: [RT] Separation of Blocks and Avalon

2003-10-10 Thread Stefano Mazzocchi
On Friday, Oct 10, 2003, at 10:44 Europe/Rome, Ryan Hoegg wrote:

Stefano Mazzocchi wrote:

On Friday, Oct 10, 2003, at 09:44 Europe/Rome, Carsten Ziegeler wrote:

I'm more and more thinking that we should do one thing after the 
other:
first creating our blocks and than moving to fortress or merlin.
Or the other way round, if someone things that it makes more sense.
But we should avoid doing both at the same time.


+1000

In that case, is it possible to incrementally develop the blocks in 
the 2.1 repository while Berin works on the container in the 
soon-to-be 2.2 repository?
Potentially possible, but I wouldn't do it, we need to be able to keep 
the 2.1 tree clean.

Berin, how long would you think it would take you to do the migration? 
do you have a list of things that worry you most?

BTW, why can't we do the migration *after* we implement the blocks?

I mean, we have a system that works and a design that improves. cocoon 
needs block far more than it needs a migration to a more modern avalon 
container.

--
Stefano.


RE: [RT] Separation of Blocks and Avalon

2003-10-10 Thread Carsten Ziegeler
Stefano Mazzocchi wrote:
 
  In that case, is it possible to incrementally develop the blocks in 
  the 2.1 repository while Berin works on the container in the 
  soon-to-be 2.2 repository?
 
 Potentially possible, but I wouldn't do it, we need to be able to keep 
 the 2.1 tree clean.
 
 Berin, how long would you think it would take you to do the migration? 
 do you have a list of things that worry you most?
 
 BTW, why can't we do the migration *after* we implement the blocks?
 
 I mean, we have a system that works and a design that improves. cocoon 
 needs block far more than it needs a migration to a more modern avalon 
 container.
 
Amen :)

Carsten



Re: [RT] Separation of Blocks and Avalon

2003-10-10 Thread Ryan Hoegg
Stefano Mazzocchi wrote:

BTW, why can't we do the migration *after* we implement the blocks?

I mean, we have a system that works and a design that improves. cocoon 
needs block far more than it needs a migration to a more modern avalon 
container.

--
Stefano.
This sounds like a good idea, since we seem to have a much more mature 
idea of what the blocks implementation entails than the container change.

One reason we might consider a new container first is that it might 
simplify the block design.  One thread that is still active talks about 
how to expose classes to other blocks.  This requirement might go away 
completely if blocks can access java in other blocks only through the 
avalon container, and we decide that any java code the block wants to 
provide must be packaged using a standard format.

The risk is that the container upgrade is very complex and time 
consuming, causing all the good ideas about blocks to be put on hold.

Of course ultimately the people doing the work will make the decision :)

--
Ryan Hoegg


[newbie] UrlExistsSelector

2003-10-10 Thread Martin Kalén
Greetings developers,

 as a newbie to the wonderful world of Cocoon sitemaps I was struggling 
with the problem of using a selector to determine if an external HTTP 
URL was available.

* Problem description:

A pipeline matcher with the following steps is triggered:
1. XSP generation
2. cinclude transformation
3. XSLT transformation
4. HTML serialization
The cinclude in step 2 triggers another cocoon pipeline. XSP snippet:
ci:include src=cocoon:/(name of pipeline #2) 
xmlns:ci=http://apache.org/cocoon/include/1.0/

Pipeline #2:
1. (what I wanted) map:select and generation based on status of external 
HTTP URL
2. XSLT transformation
3. XML serialization

* My soloution:

I was first trying the map:select with the 
org.apache.cocoon.selection.ResourceExistsSelector until I found out 
that this was only for content within the current servlet context.

I then wrote the attached (trivial) UrlExistsSelector and used this one 
for step 1 in pipeline #2.

This works, but might have som implications in security/performance (no 
timeout handling) etc. etc. that I just don't see because I'm new to Cocoon.

Any comments? Other soloutions?
TIA,
 Martin
--
Martin Kalén
Curalia AB  Web:  http://www.curalia.se
Orrspelsvägen 2BMail: [EMAIL PROTECTED]
SE-182 79  StocksundTel:  +46-8-410 064 40
import org.apache.avalon.framework.logger.AbstractLogEnabled;
import org.apache.avalon.framework.parameters.Parameters;
import org.apache.avalon.framework.thread.ThreadSafe;
import org.apache.cocoon.selection.Selector;

import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.Map;

/**
 * Selects the first of a set of URLs that can be connected to.
 * 
 * Like [EMAIL PROTECTED] org.apache.cocoon.selection.ResourceExistsSelector},
 * but works with java.net.URL instead of using the servlet
 * containter's context resolving.
 *
 * @author Martin Kaln
 * @version CVS $Id: UrlExistsSelector.java,v 1.1 2003/10/10 09:08:47 martin Exp $
 */
public class UrlExistsSelector extends AbstractLogEnabled
implements ThreadSafe, Selector {

public boolean select(String _expression_,
			  Map objectModel,
			  Parameters parameters) {
try {
URL url = "" URL(_expression_);
URLConnection connection = url.openConnection();
connection.connect();
return true;
} catch (MalformedURLException e) {
StringBuffer message = new StringBuffer();
message.append("Selector _expression_ '");
message.append(_expression_);
message.append("' is not a valid URL");
getLogger().warn(message.toString());
return false;
} catch (Exception e) {
return false;
}
}

}


Re: Track feature requests in bugzilla? (was Re: DO NOT REPLY [Bug 10203] - Docs referenced by XSLT's document() are not included in cache validity)

2003-10-10 Thread Andrew Savory
On Thu, 9 Oct 2003, Jeff Turner wrote:

 JIRA open source licenses do not expire (nor do the commercial ones).

(Just to be clear, that's a JIRA license for open source projects not a
JIRA open source license ;-)

No, but the only way I know I'll be able to use the software in perpetuity
is if I have the source code for it on my computer. Companies come and go.
If I have the code I can continue working with the software.

Don't suppose I can convince you to open the source? Wouldn't you love all
the cocoon developers submitting patches and helping you push your
product forward?


Andrew.

-- 
Andrew SavoryEmail: [EMAIL PROTECTED]
Managing Director  Tel:  +44 (0)870 741 6658
Luminas Internet Applications  Fax:  +44 (0)700 598 1135
Orixo alliance: http://www.orixo.com/  Web:www.luminas.co.uk


[RT] Changing the mime type setting of a reader

2003-10-10 Thread Carsten Ziegeler
Hi,

during our bug hunting session we came across bug 10277
that contains a discussion about the mime type handling
of a reader.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=10277

The suggestion is to change the behaviour to (or the order
to determine the mime type):

- MIME type declared on the reader instance
- Ask the Reader for a MIME type. A *.doc reader could peek into the file
  and return either text/plain or application/vnd.msword.
- MIME type declared for the reader component
- MIME type declared in WEB-INF/web.xml or by the server.

Because, *if* I set a mime type for the reader instance I will overide
the information with this.

For more info you can have a look at bugzilla.

Now, we can either agree on the above, come to a different solution
or leave it as is. Either way, I want to close this bug :)


Carsten 




Problem using SVG serialializer after a transformation

2003-10-10 Thread BORGES Charles

Hi,

I run into the following problem when serializing to svg after a xsl
transformation:

Start with a sitemap including something like this
map:match pattern=*.png
  map:generate src={1}.svg/
  map:transform src=xsl/{1}.xsl type=xslt/
  map:serialize type=svg2png/
/map:match


Turn the debug on and check for the SVGSerializer logging.
You see that serialization of the xsl transformation output produces the
massage:
setDocumentLocator was not called, will use http://localhost/ as base URI.

This means that if i have a href in my svg to a css for instance, it won't
be located and the serialization will fail!

I fixed it (somehow) by: 
1.introducing a base-url attribute in the SVGSerializer configuration:
map:serializer logger=sitemap.serializer.svg2png 
  name=svg2png
  src=fr.cegetel.dsco.gi.svg.serialization.SVGSerializer
  mime-type=image/png
  base-url=context://sample/batik/
3.using the sourceresolver to find out the uri to set in the document
locator.
2.making the SVGBuilder no more Recyclable.
 
Charles


DO NOT REPLY [Bug 23714] - Bug in SessionAttributeGenerator, double startDoc/endDoc SAX events generated

2003-10-10 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23714.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23714

Bug in SessionAttributeGenerator, double startDoc/endDoc SAX events generated





--- Additional Comments From [EMAIL PROTECTED]  2003-10-10 10:34 ---
A bit confused: wasn't it you who posted the exact same problem a couple of days
ago on the mailing list? I fixed it and replied to your mail asking to test it,
but maybe you missed my reply.

In any case, it should be fixed in current CVS, could you give it a try?


Question about the compileScript method in the JavaScriptInterpreter

2003-10-10 Thread Carsten Ziegeler
The compileScript method in the JavaScriptInterpreter looks like this:

public Script compileScript(Context cx,
Environment environment,
String fileName) throws Exception {
Source src = environment.resolveURI(fileName);

I'm wondering why here the environment is needed for resolving the source.
A usual source resolver should do the trick as well, no?
If we would use the source resolver we could release the source
cleanly and we avoid the hacky dependency that the environment
accidentally implements source resolver as well.

What do you think?

Carsten 



Re: cvs commit: cocoon-2.1/src/webapp/WEB-INF cocoon.xconf

2003-10-10 Thread Bruno Dumon
On Thu, 2003-10-09 at 23:50, Antonio Gallardo wrote:
 Stefano Mazzocchi dijo:
 
  On Thursday, Oct 9, 2003, at 22:30 Europe/Rome, Antonio Gallardo wrote:
 
  antonio 2003/10/09 13:12:35
 
Modified:src/webapp/WEB-INF cocoon.xconf
Log:
Fixing bug related to woody form handling posted
by Carlos Chávez. Bruno Dumon suggested the fix
and it works back again.
 
Revision  ChangesPath
1.31  +1 -1  cocoon-2.1/src/webapp/WEB-INF/cocoon.xconf
 
Index: cocoon.xconf
===
  RCS file: /home/cvs//cocoon-2.1/src/webapp/WEB-INF/cocoon.xconf,v
  retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- cocoon.xconf6 Oct 2003 16:10:55 -   1.30
+++ cocoon.xconf9 Oct 2003 20:12:35 -   1.31
-parameter name=reuse-parsers value=true/
+parameter name=reuse-parsers value=false/
 
  Next time we need to be more carefully :)
 
  i don't get it. if the above breaks woody, this is a hack, not a fix.
  we need to really fix the bug, not to route around it. any info on
  where the problem is?
 
 This problem does not breaks woody. It breaks Flow, continuations, woody
 and maybe other areas that I am not using. Maybe someone else can post
 other related problems.

Well it has nothing to do with any of those. What I noticed is that if
reuse-parsers is set to true, I got a SAX comment event of a comment
that appeared in an XSL stylesheet which turned up in the SAX pipeline. 

I checked the javadoc of the XMLReader class (which is the thing being
reused) and it mentions Once a parse is complete, an application may
reuse the same XMLReader object, possibly with a different input
source. So the XMLReader can be reused.

What's likely the problem (but I can't spend time on this right now) is
that the JaxpParser component only sets the lexicalhandler property on
the parser if it has one. If the parser is being reused, and no
lexicalhandler is being provided, the previous lexicalhandler will
remain used. This can probably be solved by setting it explicitely to
null.

So until someone has time to try this out and update the
excalibur-xmlutil package, we're stuck with reuse-parsers set to false.

-- 
Bruno Dumon http://outerthought.org/
Outerthought - Open Source, Java  XML Competence Support Center
[EMAIL PROTECTED]  [EMAIL PROTECTED]



HSSFSerializer problem with gnumeric-formats

2003-10-10 Thread Achim Reiners
Hi all,

I am using HSSFSerializer to create a native Excel file from Cocoon.
Works great !

But some of the elements in my gnumeric-xml-format that I pass to the serializer seem 
NOT to be recognized.
E.g.

Attributes
SheetLayout
Summary

( The original gnumeric spreadsheet program does recognize them )

I am using Cocoon 2.0.4

Is there something like a list or plan of which gnumeric-xml-elements are supported by 
which version of Cocoon/HSSFSerializer?

Any help is much appreciated.


Thanks 

Achim Reiners


-

The information contained in this message is proprietary of Amdocs,

protected from disclosure, and may be privileged.

The information is intended to be conveyed only to the designated recipient(s)

of the message. If the reader of this message is not the intended recipient,

you are hereby notified that any dissemination, use, distribution or copying of 

this communication is strictly prohibited and may be unlawful. 

If you have received this communication in error, please notify us immediately

by replying to the message and deleting it from your computer.

Thank you.


-


Re: [RT] Using modifiers within Cocoon components

2003-10-10 Thread Stefano Mazzocchi
On Friday, Oct 10, 2003, at 10:47 Europe/Rome, Stephan Michels wrote:

map:pipeline access=protected - Accessible by all blocks, but not
 outside of Cocoon
this is useless and/or harmful. only dependent blocks can have access 
to the pipeline. scope is already limited by design.

BTW, shouldn't the 'root' block decide which resources are
public and which are private?! So that everything is protected, except
the 'root' block exposes them.
no, this level of level protection is done by the dependencies.

--
Stefano.


Re: [RT] Finishing the first phase of block design

2003-10-10 Thread Stefano Mazzocchi
On Friday, Oct 10, 2003, at 11:04 Europe/Rome, Stephan Michels wrote:



On Thu, 9 Oct 2003, Stefano Mazzocchi wrote:

On Wednesday, Oct 8, 2003, at 04:50 Europe/Rome, Geoff Howard wrote:

Stefano Mazzocchi wrote:

I have updated the block design documents on the wiki. Changes were:
...

A few things are left to decide:
 1) the block metadata information in the block.xml file
  see http://wiki.cocoondev.org/Wiki.jsp?page=BlocksCob
 2) how blocks expose classloading to other blocks
 - o -
Descriptive Block metadata
--
The descriptive block metadata that we currently include is:
 name***/name
 description href=...***/description
 license href=.../***/license
 author href=...***/author
+1

Andreas suggested version number which is really handled already in
the block id and release date.  I think a date though may be a useful
additional piece of info.
Good point.
IMHO, I would try first a solution, which doesn't introduce a new
descriptor.
like what?

In a know german XML magazin, Cocoon was descriped a
configuration hell, and as a anti pattern using XML as
configuration format.
yeah, we agree about the configuration hell, but this is because we 
expose too much of things that people should never touch.

So my proposal would be to start small, and if there isn't a way
to come forward with the current possibilities, then
we could introduce a new descriptor file beside
cocoon.xconf/sitemap.xmap/web.xml etc.
you didn't get it: the is the *block* descriptor. each block needs one. 
I see no way to go without one.

Exposing classes

Stephen proposed to separate the classes to expose in a different 
jar
and expose that. I like this. It's simple and effective.
But instead of declaring classloaders or classpaths in the blocks, I
propose to extend the block FS layout so that we have
for individual classes and resources:
 /classes
 /classes/public
 /classes/private
for jars:
 /lib
 /lib/public
 /lib/private
Hmmm.  That is quite different than what one would expect from the 
WAR
paradigm, no?  Would

COB-INF/[classes|lib]
COB-INF/public/[classes|lib]
or

COB-INF/private/[classes|lib]
COB-INF/public/[classes|lib]
be any better?
Could you please explain, why we need to separate the classes and lib 
into
private and public. For the developers POV, it will make the 
development
more complicated, and doesn't see any benefit.
to better isolate classloader and the contracts that are exposed by the 
block. make development more complicated but forces people to think of 
application contracts that can be later reused as global behaviors.

think of it as a generalization of a collection of interfaces and data 
structures that are passed around. like JAXP+Xerces jaxp is public, 
xerces should not be, otherwise the public methods of the xerces 
classes can be hooked up and later broken if a new implementation of 
JAXP comes around.

also reduces the potential problems with hot deployment for 
classloading dependencies

--
Stefano.


[RT] Component manager, classloader and blocks

2003-10-10 Thread Stephan Michels
Hi,

Since some days I thought about how implement blocks with smallest
amount of work. (small ist beautiful)

Most of the work is already finished, if we look into the 'unreal'
block in the CVS repository. We have
a classes, libs, a sitemap, a xconf file and some custom files.
We could easily pack them into a zip file.

What need:

For every block we need
* a block URI, which identifies it.
* statements about dependecies to other blocks.
* Component manager, for a separate cocoon.xconf
* Sitemap proccessor for the root sitemap of the block
* A classloader for each block, which were exchange if the
  the block has changed.

The simplest form to include the information about the block
URI and the dependencies is to use the sitemap for it, for example

map:sitemap xmlns:map=http://apache.org/cocoon/sitemap/1.0;
 map:block uri=http://apache.org/cocoon/block/myblock/1.0;
  map:import block=basic uri=http://apache.org/cocoon/block/basic/1.0/
 /map:block

For the sitemap components we need two component manager for
handling the 'public' and 'private' components.

 +---++---+
 | myblock   || basic |
 | +---+ | lookup | +---+ |
 | | public cm |-++| public cm | |
 | +---+ || +---+ |
 |  ^||  ^|
 |  | lookup ||  | lookup |
 |  |||  ||
 | +---+ || +---+ |
 | | private cm| || | private cm| |
 | +---+ || +---+ |
 |  ^||  ^|
 |  | lookup ||  | lookup |
 |  |||  ||
 | +--+  || +---+ |
 | | sitemap  |  || | sitemap   | |
 | +--+  || +---+ |
 |   ||   |
 +---++---+

Another difficult part is about the dependecies of the CMs between
subsitemaps (I doesn't have a solution). I think subsitemaps
are a contrary solution to blocks, perhaps we should rethink the
subsitemaps.

To prevent component name collisions within, we could use prefixes like

 match type=basic:wildcard pattern=*.html
  map:generate type=basic:file src={1}.xml/
  map:transform type=basic:xsl src=mystyles.xsl/
  map:transform type=mytransformer/
  map:serialze type=basic:html/

If there is no name collision, you can leave out the prefix.
The problem is that the current CM model doesn't support
such a kind of prefix, but it doesn't need to, because
the sitemap processor can resolve the prefix, and know
which CM to ask for.


For the classes and libs itself, I think separate them into public
and private isn't necessary for the first step.
A cheap solution is use following FS within a zip file:

myblock.zip
 /COB_INF/classes
 /COB-INF/lib
 /COB-INF/componts.xconf
 /sitemap.xmap
 /[whatever]

Every block get his own classloader, and if the block has changes
the classloader will be exchanged. Each depending block has
a parent classloader, which will be consulted if the current
classloader doesn't know the class.


My unsorted braindump, Stephan.

 cat /dev/brain | grep blocks | mail [EMAIL PROTECTED]

___
 Stephan Michels   EMail: [EMAIL PROTECTED]
 ICQ: 115535699Tel: +49-030-314-21583
+|+|+|+|+|+|+|-|




Re: [RT] Finishing the first phase of block design

2003-10-10 Thread Stephan Michels


On Fri, 10 Oct 2003, Stefano Mazzocchi wrote:


 On Friday, Oct 10, 2003, at 11:04 Europe/Rome, Stephan Michels wrote:

  Exposing classes
  
  Stephen proposed to separate the classes to expose in a different
  jar
  and expose that. I like this. It's simple and effective.
  But instead of declaring classloaders or classpaths in the blocks, I
  propose to extend the block FS layout so that we have
  for individual classes and resources:
   /classes
   /classes/public
   /classes/private
  for jars:
   /lib
   /lib/public
   /lib/private
 
  Hmmm.  That is quite different than what one would expect from the
  WAR
  paradigm, no?  Would
 
  COB-INF/[classes|lib]
  COB-INF/public/[classes|lib]
 
  or
 
  COB-INF/private/[classes|lib]
  COB-INF/public/[classes|lib]
 
  be any better?
 
  Could you please explain, why we need to separate the classes and lib
  into
  private and public. For the developers POV, it will make the
  development
  more complicated, and doesn't see any benefit.

 to better isolate classloader and the contracts that are exposed by the
 block. make development more complicated but forces people to think of
 application contracts that can be later reused as global behaviors.

Your intentions are good, but do you really want to force them.
And how do you realize this. Do you what to cut the whole source
path into two separate branches, or using javadoc statement.

 think of it as a generalization of a collection of interfaces and data
 structures that are passed around. like JAXP+Xerces jaxp is public,
 xerces should not be, otherwise the public methods of the xerces
 classes can be hooked up and later broken if a new implementation of
 JAXP comes around.

I doesn't think that a separation between private and public classes
is quite easy.

 also reduces the potential problems with hot deployment for
 classloading dependencies

You will have the same problem, if you separates them into public and
private. The classes, which are used by initiated objects, can't
exchanged.

Stephan Michels.



RE: [RT] Finishing the first phase of block design

2003-10-10 Thread Robert Koberg

 to better isolate classloader and the contracts that are exposed by the
 block. make development more complicated but forces people to think of
 application contracts that can be later reused as global behaviors.
 
 think of it as a generalization of a collection of interfaces and data
 structures that are passed around. like JAXP+Xerces jaxp is public,
 xerces should not be, otherwise the public methods of the xerces
 classes can be hooked up and later broken if a new implementation of
 JAXP comes around.


I posted the text below to the XSL list a few weeks ago (can't find it in
the archives). Mike Kay responded saying the JAXP working group was
reviewing these issues now and would perhaps come up with clearer
specificiations. Cocoon, specifically, might be interested in the
Xalan/XSLTC part below.

the post
I want to report my findings with regard to standard implementations of how
the method setURIReolver works in the popular Open Source java xsl
processors. From what I understand from past discussions is that the spec is
not clear on the issue. I was wondering if processor developers could get
together and decide either one way to implement the setURIResolver or do it
the way Saxon does by doing both (hopefully explained below). 

According to most API's you can set the URIResolver on the
TransformerFactory and on the Transformer. Generally, the resolver set on
the TransformerFactory resolves xsl:includes and xsl:imports. If set on the
Tranformer it resolves document() function calls.


- Saxon allows you to set the resolver on the TransformerFactory to resolve
both includes/imports and document(). 
It also lets you set one for the factory and one for the transformer. When
this is done the factory resolves include/import and the transformer
resolves document(). This is the best way, IMHO.

- jd.xslt only uses the TransformerFactory to be used for
xsl:include/xsl:import and document() resolution.

Strangely, the standard xalan and it's xsltc implementation do two different
things.
- standard xalan requires you to use the TransformerFactory for xsl:include
and xsl:import and the Transformer for document()
- xsltc xalan uses the TransformerFactory for both xsl:include/xsl:import
and document() -- not the Transformer for document(), like the standard
xalan.

Any chance of standardizing on one way? :)
/the post

Best,
-Rob



 
 also reduces the potential problems with hot deployment for
 classloading dependencies
 
 --
 Stefano.



Antwort: HSSFSerializer problem with gnumeric-formats

2003-10-10 Thread manfred . weigel

Hi Achim,

Have a look at
http://cocoon.apache.org/2.0/userdocs/serializers/xls-serializer.html

That´s fine for 2.0.4

regards
Manfred




[EMAIL PROTECTED] am 10.10.2003 13:00:10

Bitte antworten an [EMAIL PROTECTED]@inet

An:  [EMAIL PROTECTED]
Kopie:
Thema:   HSSFSerializer problem with gnumeric-formats


Hi all,

I am using HSSFSerializer to create a native Excel file from Cocoon.
Works great !

But some of the elements in my gnumeric-xml-format that I pass to the
serializer seem NOT to be recognized.
E.g.

Attributes
SheetLayout
Summary

( The original gnumeric spreadsheet program does recognize them )

I am using Cocoon 2.0.4

Is there something like a list or plan of which gnumeric-xml-elements are
supported by which version of Cocoon/HSSFSerializer?

Any help is much appreciated.


Thanks

Achim Reiners


-


The information contained in this message is proprietary of Amdocs,

protected from disclosure, and may be privileged.

The information is intended to be conveyed only to the designated
recipient(s)

of the message. If the reader of this message is not the intended
recipient,

you are hereby notified that any dissemination, use, distribution or
copying of

this communication is strictly prohibited and may be unlawful.

If you have received this communication in error, please notify us
immediately

by replying to the message and deleting it from your computer.

Thank you.


-










Re: SourceResolver does not send parameters?

2003-10-10 Thread Bruno Dumon
On Wed, 2003-10-08 at 17:07, Nico Verwer wrote:
 Hello Cocoon developers,

snip/

 The problem is that the remote server does not get the 'query' parameter. I
 tested this by substituting a URL on my own server for the remoteserver URL:

snip/

   actionSource = resolver.resolveURI(source, null,
 Parameters.toProperties(params));

The parameters you supply here as third argument to the resolveURI
method aren't added to the request URI. Instead, the Map you supply
should contain a key SourceResolver.URI_PARAMETERS with as value an
instance of org.apache.excalibur.source.SourceParameters.

-- 
Bruno Dumon http://outerthought.org/
Outerthought - Open Source, Java  XML Competence Support Center
[EMAIL PROTECTED]  [EMAIL PROTECTED]



Re: [RT] Finishing the first phase of block design

2003-10-10 Thread Stefano Mazzocchi
On Friday, Oct 10, 2003, at 13:42 Europe/Rome, Stephan Michels wrote:



On Fri, 10 Oct 2003, Stefano Mazzocchi wrote:

On Friday, Oct 10, 2003, at 11:04 Europe/Rome, Stephan Michels wrote:

Exposing classes

Stephen proposed to separate the classes to expose in a different
jar
and expose that. I like this. It's simple and effective.
But instead of declaring classloaders or classpaths in the 
blocks, I
propose to extend the block FS layout so that we have
for individual classes and resources:
 /classes
 /classes/public
 /classes/private
for jars:
 /lib
 /lib/public
 /lib/private
Hmmm.  That is quite different than what one would expect from the
WAR
paradigm, no?  Would
COB-INF/[classes|lib]
COB-INF/public/[classes|lib]
or

COB-INF/private/[classes|lib]
COB-INF/public/[classes|lib]
be any better?
Could you please explain, why we need to separate the classes and lib
into
private and public. For the developers POV, it will make the
development
more complicated, and doesn't see any benefit.
to better isolate classloader and the contracts that are exposed by 
the
block. make development more complicated but forces people to think of
application contracts that can be later reused as global behaviors.
Your intentions are good, but do you really want to force them.
yes

And how do you realize this. Do you what to cut the whole source
path into two separate branches, or using javadoc statement.
it's just a matter of packaging the classes after having compiled them. 
not such a big deal and, after all, a detail that each block developer 
can take care of itself.

if he doensn't like peparation, he can stick everything into the public 
part and forget about it... but shouldn't later come complianing if he 
exposes public methods that were not really meant to be public.

think of it as a generalization of a collection of interfaces and data
structures that are passed around. like JAXP+Xerces jaxp is public,
xerces should not be, otherwise the public methods of the xerces
classes can be hooked up and later broken if a new implementation of
JAXP comes around.
I doesn't think that a separation between private and public classes
is quite easy.
Exactly. It forces to design your contracts. That's a good thing.

also reduces the potential problems with hot deployment for
classloading dependencies
You will have the same problem, if you separates them into public and
private. The classes, which are used by initiated objects, can't
exchanged.
True, but the public zone will be done with mostly interfaces and data 
models, the functional classes that are likely to change are 
polymorphically managed by the component manager, you shouldn't be 
calling new object() anyway, this is just done to expose the classes 
that are created by the components.

remember that we are still forcing the people to use the basic avalon 
component model of polymorphic delegation.

--
Stefano.


DO NOT REPLY [Bug 23648] - HTMLGenerator produces NullPointerException on HML-docs with XML-Declaration

2003-10-10 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23648.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23648

HTMLGenerator produces NullPointerException  on HML-docs with   XML-Declaration

[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED



--- Additional Comments From [EMAIL PROTECTED]  2003-10-10 12:12 ---
The problem is that the HTMLGenerator recognizes the XML declaration as a
processing instruction (with target 'null'). I fixed it as you indicated. Please
check and close this bug.


Re: Problem using SVG serialializer after a transformation

2003-10-10 Thread Sylvain Wallez
BORGES Charles wrote:

Hi,

I run into the following problem when serializing to svg after a xsl
transformation:
Start with a sitemap including something like this
map:match pattern=*.png
 map:generate src={1}.svg/
 map:transform src=xsl/{1}.xsl type=xslt/
 map:serialize type=svg2png/
/map:match
Turn the debug on and check for the SVGSerializer logging.
You see that serialization of the xsl transformation output produces the
massage:
setDocumentLocator was not called, will use http://localhost/ as base URI.
This means that if i have a href in my svg to a css for instance, it won't
be located and the serialization will fail!
I fixed it (somehow) by: 
1.introducing a base-url attribute in the SVGSerializer configuration:
map:serializer logger=sitemap.serializer.svg2png 
 name=svg2png
 src=fr.cegetel.dsco.gi.svg.serialization.SVGSerializer
 mime-type=image/png
 base-url=context://sample/batik/

Be careful: the convention in configurations is that attributes are 
container-related data. Component-related data should be better located 
as child elements. So the following should be better:

map:serializer 
 base-urlcontext://sample/batik/base-url
/map:serializer
3.using the sourceresolver to find out the uri to set in the document locator.

So do you really need the base-url? Isn't the uri of 
SourceResolver.resolveURI() just what you need? Or at least it can be 
a fallback if base-url is not present.

2.making the SVGBuilder no more Recyclable.

Why can it no more be Recyclable?

Sylvain

--
Sylvain Wallez  Anyware Technologies
http://www.apache.org/~sylvain   http://www.anyware-tech.com
{ XML, Java, Cocoon, OpenSource }*{ Training, Consulting, Projects }
Orixo, the opensource XML business alliance  -  http://www.orixo.com



DO NOT REPLY [Bug 23725] New: - In offline generation mode, when I start Cocoon with a Uris list file, the argument confirm extensions (-e) is not used, and the created files are forced with the default mime type extension.

2003-10-10 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23725.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23725

In offline generation mode, when I start Cocoon with a Uris list file, the argument 
confirm extensions (-e) is not used, and the created files are forced with the default 
mime type extension.

   Summary: In offline generation mode, when I start Cocoon with a
Uris list file, the argument confirm extensions (-e) is
not used, and the created files are forced with the
default mime type extension.
   Product: Cocoon 2
   Version: 2.1.2
  Platform: PC
OS/Version: Windows NT/2K
Status: NEW
  Severity: Normal
  Priority: Other
 Component: core
AssignedTo: [EMAIL PROTECTED]
ReportedBy: [EMAIL PROTECTED]


In offline generation mode, when I start Cocoon with a Uris list file, the 
argument confirm extensions (-e) is not used, and the created files are forced 
with the default mime type extension.
Cause of the problem : URIs are parsed during analysis of the –f argument, and 
this argument is analysed before the confirm extensions argument (-e). The 
consequence is that the confirm extensions is not taken into account. This 
occur in the main method of the ora.apache.cocoon.Main class. 
See the code below :
if (line.hasOption(URI_FILE_OPT)) {
// URIs file is parsed
cocoon.addTargets(processURIFile(line.getOptionValue
(URI_FILE_OPT)), destDir);
}
if (line.hasOption(FOLLOW_LINKS_OPT)) {
cocoon.setFollowLinks(yesno(line.getOptionValue(FOLLOW_LINKS_OPT)));
}
if (line.hasOption(CONFIRM_EXTENSIONS_OPT)) {
// Confirm extensions property is set
cocoon.setConfirmExtensions(yesno(line.getOptionValue
(CONFIRM_EXTENSIONS_OPT, yes)));
}
if (line.hasOption(LOAD_CLASS_OPT)){
cocoon.addLoadedClasses(Arrays.asList(line.getOptionValues
(LOAD_CLASS_OPT)));
}

cocoon.addTargets(line.getArgList(), destDir);

 The following changes correct the problem :
if (line.hasOption(FOLLOW_LINKS_OPT)) {
cocoon.setFollowLinks(yesno(line.getOptionValue(FOLLOW_LINKS_OPT)));
}
if (line.hasOption(CONFIRM_EXTENSIONS_OPT)) {
// Confirm extensions property is set
cocoon.setConfirmExtensions(yesno(line.getOptionValue
(CONFIRM_EXTENSIONS_OPT, yes)));
}
if (line.hasOption(LOAD_CLASS_OPT)){
cocoon.addLoadedClasses(Arrays.asList(line.getOptionValues
(LOAD_CLASS_OPT)));
}
if (line.hasOption(URI_FILE_OPT)) {
// URIs file is parsed when all arguments have been analysed
cocoon.addTargets(processURIFile(line.getOptionValue
(URI_FILE_OPT)), destDir);
}

Vincent.


RE: [RT] Separation of Blocks and Avalon

2003-10-10 Thread Giacomo Pati
On Fri, 10 Oct 2003, Reinhard Poetz wrote:


  From: Ryan Hoegg
 
 
  Stefano Mazzocchi wrote:
 
  
   On Friday, Oct 10, 2003, at 09:44 Europe/Rome, Carsten
  Ziegeler wrote:
  
   I'm more and more thinking that we should do one thing after the
   other: first creating our blocks and than moving to fortress or
   merlin. Or the other way round, if someone things that it
  makes more
   sense. But we should avoid doing both at the same time.
  
  
   +1000
  
  In that case, is it possible to incrementally develop the
  blocks in the
  2.1 repository while Berin works on the container in the
  soon-to-be 2.2
  repository?

 -1
 we need the 2.1 repository to be able to do 2.1.x releases. Otherwise we
 would ship alpha code and I think people building their applications
 upon 2.1 wouldn't be very happy with this.

That's one reason why CVS has branches.

--
Giacomo Pati
Otego AG, Switzerland - http://www.otego.com
Orixo, the XML business alliance - http://www.orixo.com



DO NOT REPLY [Bug 23725] - In offline generation mode, when I start Cocoon with a Uris list file, the argument confirm extensions (-e) is not used, and the created files are forced with the default mime type extension.

2003-10-10 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23725.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23725

In offline generation mode, when I start Cocoon with a Uris list file, the argument 
confirm extensions (-e) is not used, and the created files are forced with the default 
mime type extension.

[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED



--- Additional Comments From [EMAIL PROTECTED]  2003-10-10 14:21 ---
Thanks. I've committed your change to CVS. Can you test it and close this bug?

Upayavira


DO NOT REPLY [Bug 23615] - xsltc doesn't work with nodeset functions

2003-10-10 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23615.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23615

xsltc doesn't work with nodeset functions





--- Additional Comments From [EMAIL PROTECTED]  2003-10-10 14:22 ---
Maybe Xalan Dev can tell us the reason?


RE: [RT] Separation of Blocks and Avalon

2003-10-10 Thread Reinhard Poetz

From: [EMAIL PROTECTED] 

   In that case, is it possible to incrementally develop the 
 blocks in 
   the 2.1 repository while Berin works on the container in the
   soon-to-be 2.2
   repository?
 
  -1
  we need the 2.1 repository to be able to do 2.1.x releases. 
 Otherwise 
  we would ship alpha code and I think people building their 
  applications upon 2.1 wouldn't be very happy with this.
 
 That's one reason why CVS has branches.

a new branch or a new repository? IIRC we decided *not* to create any 
branches but to create new repositories instead.

Reinhard



multiple XML file input

2003-10-10 Thread Scott A Malec
Hi there - has anyone experience with writing a sitemap that takes
multiple XML files as input for XSLT?
Thanks!
Scott Malec


Re: mounting blocks question

2003-10-10 Thread Geoff Howard
Stefano Mazzocchi wrote:
On Friday, Oct 10, 2003, at 04:43 Europe/Rome, Geoff Howard wrote:

We decided that wiring.xml would have entries like:

mount/mail//mount

How would this work for using hostname based mounting?


no. this concerns applies to the servlet hosting environment, there is 
nothing we can do from this side of the Servlet API fence to trigger 
virtual host configuration.

Use case:
http://mail.mydomain.com
http://www.mydomain.com
Two different applications, same cocoon instance.

(mail block)
mount host=mail.mydomain.com//mount
??

 (main site block)
mount host=www.mydomain.com//mount
... (authentication block)

mount/login/mount (defaults to all hosts)


single sign-on, right?

yeah, thought about it extensively but no, we can't do it from this 
side, unless we hook to a particular servlet container and we modify its 
configuration files directly and not thru the servlet API.

and in a two-tier environment (think apache+tomcat), this is not even 
enough, since the virtual hosts are configured in httpd.conf.

Is it possible to achieve the same functionality? yeah, you bet, with a 
little tuning of httpd.conf, a few aliases and/or mod_rewrite URI 
rewriting.
Huh?  I'm doing it now with Cocoon.  It's just a host matcher in the 
root sitemap and each mounts a sub-sitemap.  I know that in order to get 
those vhosts pointing to the cocoon webapp I have to configure some 
other front end, but I'm talking about supporting them once they arrive.

Geoff



DO NOT REPLY [Bug 23615] - xsltc doesn't work with nodeset functions

2003-10-10 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23615.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23615

xsltc doesn't work with nodeset functions





--- Additional Comments From [EMAIL PROTECTED]  2003-10-10 14:31 ---
The sample should work with XSLTC in Xalan 2.5. It is likely that you are using 
an older xalan version packaged in JDK 1.4. Please read this FAQ 
(http://xml.apache.org/xalan-j/faq.html#faq-N100CB) for information. If you are 
not sure which xalan version is being used, you can use EnvironmentCheck 
(http://xml.apache.org/xalan-j/faq.html#faq-N1005C) to find it out.


Re: multiple XML file input

2003-10-10 Thread Upayavira
Scott A Malec wrote:

Hi there - has anyone experience with writing a sitemap that takes
multiple XML files as input for XSLT?
Thanks!
Scott Malec
 

This should be asked on the user list.

Look into map:aggregate

Regards, Upayavira




RE: getxml in XSP throws NPE if @path is invalid

2003-10-10 Thread Tuomo L
Thanks Carsten, I'll try it out...

How can I update my Cocoon installation (2.1.2), with this patch?
Which jar do I need to update and how? (Haven't done this before) :|

BTW, The build seems to be broken right now...

-Tuomo

On Thu, 9 Oct 2003, Carsten Ziegeler wrote:

 Hi,

 I just checked in a patch that should fix this problem.
 Could you please test it?

 Thanks
 Carsten

  -Original Message-
  From: Tuomo L [mailto:[EMAIL PROTECTED]
  Sent: Wednesday, October 08, 2003 10:26 PM
  To: [EMAIL PROTECTED]
  Subject: getxml in XSP throws NPE if @path is invalid
 
 
  Hi,
 
  This gives me a nasty NPE in XSP:
 
  String foo = xsp-session-fw:getxml context=authentication
  path=/authentication/data/bar/;
 
  This does not:
 
  String foo = xsp-session-fw:getxml context=authentication
  path=/authentication/ID/;
 
  Shouldn't it return null, if the given path is not available? It seems
  that there's a bug. Could someone please fix this? I didn't find the cause
  to this by looking at the code.
 
  Using Cocoon-2.1.2.
 
  Thanks,
  Tuomo
 



Antwort: multiple XML file input

2003-10-10 Thread manfred . weigel

Hi Scott!

Yes we have!

Use the map:aggregate
Have a look at http://www.cocooncenter.de/articles/stylefree.html

good luck!
regards
Manfred




[EMAIL PROTECTED] am 10.10.2003 16:10:49

Bitte antworten an [EMAIL PROTECTED]@inet

An:  [EMAIL PROTECTED]
Kopie:
Thema:   multiple XML file input


Hi there - has anyone experience with writing a sitemap that takes
multiple XML files as input for XSLT?
Thanks!
Scott Malec









Re: [site docs] build failing

2003-10-10 Thread Nicola Ken Barozzi
Carsten Ziegeler wrote:

Building the docs failed because plan/changes.rss could not
be generated (no pipeline found).
I just checked in a hack to the doc sitemap, so this pipeline
is now found and building the docs, especially the site docs
works again.
Does anyone know where plan/changes.rss is used and why?
Changes.rss is created from changes.xml by Forrest to give an RSS feed 
from the changes. It's included in the changes.xml page as a link.

See this as an example:
http://xml.apache.org/forrest/changes.html
It's strange, is there no sitemap that does this in your forrest? wierd...

--
Nicola Ken Barozzi   [EMAIL PROTECTED]
- verba volant, scripta manent -
   (discussions get forgotten, just code remains)
-



RE: Question about the compileScript method in the JavaScriptInterpreter

2003-10-10 Thread Carsten Ziegeler
Sylvain Wallez wrote:
 
 Actually, the whole flow stuff abuses the use or Environment, when it 
 simply needs the object model. On my todo list is some refactoring to 
 remove all uses of environment in the flow, unless someone else 
 volunteers for it.
 
 In the meantime, we can simply replace uses of the Environment by the 
 real SourceResolver where needed.
 
Ok.

 BTW, regarding the forthcoming refactoring of Environment: is this 
 accidental implementation of SourceResolver really needed?
 
No, not anymore. It was in 2.0.x but starting with 2.1 I think it's
only for compatibility.

Carsten


RE: [RT] Separation of Blocks and Avalon

2003-10-10 Thread Carsten Ziegeler
Giacomo Pati wrote:

  We extend the ECM with our CocoonComponentManager, you can have a look
  at that class. All the features (hacks?) in there have to be somehow
  available using fortress, merlin or whatever.
  We have another lifecycle type, the request lifecycle component. This is
  an extension to poolable and means that per request only one instance
  of this component is used. So if two other components lookup this
  request lifecycle component, they get the same instance.
  The implementation of this extension is a little bit difficult as we
  have sub requests that run in the same thread but have a different
  set of request lifecycle components.
  In addition it's possible to process on request multi threaded which
  makes this even more difficult.

 IIRC Fortress can handle this with a special Handler we have to supply
 (instead of subclassing the hole Container class). Remeber that in
 Fortress Object handling is separated into meta data instead of
 additional marker interfaces. There is no Poolable, ThreadSafe, etc. any
 more but ThreadSafeComponentHandler, PoolableComponentHandler instead.

Yes, I know - and I saw the handlers of fortress and it should work.

  There are some other important extensions like the environment handling
  for the source resolver and the sitemap configurable components. They
  use more or less the same technique used for the request lifecycle
  components.

 I'm sure there is a way for this also and with the help of a Handler it
 can be made with IOC in mind.

I'm not sure for the source resolver part. The other things should work,
yes.


 Yes, but the world is still spinning and there are alot of other
 Component out there that don't follow the ECM style because it's
 deprecaded for long time now and every time we want to use such a
 component we have to extend the working interface to make it a
 'Component' for ECM and extend the implementation to have our interface
 implemented (do you remember the Cornerstone Scheduler?).  That's ugly!

Definitly. Ok, that's a point.

 As a side note: I got the impression (and that supprises me alot) there
 is too little knowledge around here what Avalon is doing and where it is
 moving in the so central Component Container discipline. This IMHO led
 to this 'we think Avalon cannot supply what we want' situation and so we
 are ignoring the helping hand Avalon people put forth several times now.

At least for me it's not the 'we think Avalon cannot supply what we want'
that I fear of. It's more a can the Avalon community support the version
for us and for how long.

Carsten



RE: [RT] Separation of Blocks and Avalon

2003-10-10 Thread Carsten Ziegeler
Reinhard Poetz wrote:
   we need the 2.1 repository to be able to do 2.1.x releases. 
  Otherwise 
   we would ship alpha code and I think people building their 
   applications upon 2.1 wouldn't be very happy with this.
  
  That's one reason why CVS has branches.
 
 a new branch or a new repository? IIRC we decided *not* to create any 
 branches but to create new repositories instead.
 

PLEASE, don't start this discussion over and over again. We have (after
a long painful discussion period) decided (or better reassured) that
we create a new repository for 2.2. And Stefano wanted to contact
infrastructure to create the 2.2 one.

Carsten


RE: getxml in XSP throws NPE if @path is invalid

2003-10-10 Thread Carsten Ziegeler
Hi,

you have to update the session jar.

Carsten

 -Original Message-
 From: Tuomo L [mailto:[EMAIL PROTECTED]
 Sent: Friday, October 10, 2003 4:46 PM
 To: [EMAIL PROTECTED]
 Subject: RE: getxml in XSP throws NPE if @path is invalid


 Thanks Carsten, I'll try it out...

 How can I update my Cocoon installation (2.1.2), with this patch?
 Which jar do I need to update and how? (Haven't done this before) :|

 BTW, The build seems to be broken right now...

 -Tuomo

 On Thu, 9 Oct 2003, Carsten Ziegeler wrote:

  Hi,
 
  I just checked in a patch that should fix this problem.
  Could you please test it?
 
  Thanks
  Carsten
 
   -Original Message-
   From: Tuomo L [mailto:[EMAIL PROTECTED]
   Sent: Wednesday, October 08, 2003 10:26 PM
   To: [EMAIL PROTECTED]
   Subject: getxml in XSP throws NPE if @path is invalid
  
  
   Hi,
  
   This gives me a nasty NPE in XSP:
  
   String foo = xsp-session-fw:getxml context=authentication
   path=/authentication/data/bar/;
  
   This does not:
  
   String foo = xsp-session-fw:getxml context=authentication
   path=/authentication/ID/;
  
   Shouldn't it return null, if the given path is not available? It seems
   that there's a bug. Could someone please fix this? I didn't
 find the cause
   to this by looking at the code.
  
   Using Cocoon-2.1.2.
  
   Thanks,
   Tuomo
  
 




DO NOT REPLY [Bug 23725] - In offline generation mode, when I start Cocoon with a Uris list file, the argument confirm extensions (-e) is not used, and the created files are forced with the default mime type extension.

2003-10-10 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23725.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23725

In offline generation mode, when I start Cocoon with a Uris list file, the argument 
confirm extensions (-e) is not used, and the created files are forced with the default 
mime type extension.

[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|RESOLVED|CLOSED


Re: [RT] Separation of Blocks and Avalon

2003-10-10 Thread Geoff Howard
Giacomo Pati wrote:
On Fri, 10 Oct 2003, Geoff Howard wrote:

How about this proposal:

If Berin feels the migration can be quick (1 week?) we start a 2.2 repo,
I would give him even 2 weeks ;-)
:)
Clarification:
- We give _it_ x amount of time not him.  I think we ought to be as 
involved as possible.
- 1 week was really tossed out as a question to the one(s) who are in a 
position to guess what it will take and to start to define what quick 
would mean.  6 months of hard work is not quick.  1 day is quick. 
In-between is a judgement call we'll have to make and that's where I'd 
expect it to be.

Geoff



Re: [RT] Finishing the first phase of block design

2003-10-10 Thread Geoff Howard
Stefano Mazzocchi wrote:
On Friday, Oct 10, 2003, at 04:01 Europe/Rome, Geoff Howard wrote:

Stefano Mazzocchi wrote:

On Wednesday, Oct 8, 2003, at 04:50 Europe/Rome, Geoff Howard wrote:

Stefano Mazzocchi wrote:
...

Exposing classes

Stephen proposed to separate the classes to expose in a different  
jar and expose that. I like this. It's simple and effective.
But instead of declaring classloaders or classpaths in the blocks,  
I propose to extend the block FS layout so that we have
for individual classes and resources:
 /classes
 /classes/public
 /classes/private
for jars:
 /lib
 /lib/public
 /lib/private
Hmmm.  That is quite different than what one would expect from the  
WAR paradigm, no?  Would

COB-INF/[classes|lib]
COB-INF/public/[classes|lib]
or

COB-INF/private/[classes|lib]
COB-INF/public/[classes|lib]
be any better?
This might suggest the concept that private is the location of all  
the things that are private so
 private/lib
means I have libraries in the private section, so maybe I can put  
something else as well to have it protected? while
 lib/private
means these are the private libraries... but doesn't say anything  
about non-lib things. I still like this approach better, even if it  
moves away from the WAR paradigm (which is not a big deal, IMO, 
since  blocks are different enough already)
Ok, that's a good point.  I have a parallel concern that something like

COB-INF/classes/com/mypackage/whyisntitfound/NotFound.class

or

package public.com.myconfused.package
public Class StillNotFound {...
will pop up regularly on the users list.
hmmm, don't think so, don't see many users actually adding their own  
single classes to those blocks and then deploy. I think they will put  
their prepackaged jars in there. but hey, you might be right.

One more idea to try to avert potential confusion.

COB-INF/private-lib/
COB-INF/private-classes/
COB-INF/public-lib/
COB-INF/public-classes/
?
I'm -0 on this, don't see the need, but I see your point.
Ok, if no one else sees the need I'm fine to move forward as is.  As a 
final wild idea, the Avalon meta-info project might help here.

...

3) Explicit resource uri's
Should exposed resource (pipeline) uri's be declared explicitly?
This is where I still have some reservations as begun above in the  
not-found/fallback example.

map:match pattern=stylesheets/*.xslt
  map:read src=styles/{1}.xslt/
/map:match
Is convenient to write, but may be inconvenient to use for block  
users, extenders, implementers, and the BlockManager (code).  Perhaps  
the first  can be taken care of with human readable documentation  
(though I fear what the cocoon blocks will have in this respect).   
Perhaps the second is unfounded.  I'm not convinced of either of 
those  and think it merits further thinking.

A possible solution:
Rather than disallowing wildcards, perhaps a part of block.xml could be
resources
  uri/stylesheets/news2html.xslt/uri
  ...
/resources
Maybe that'd be a pain but it'd leave no guessing.  Maybe:

...
extends block=http://yetanothercompany.com/skins/fancy/1.2.2;
  uri/stylesheets/news2html.xslt/uri
/extends
...
Would be better?  It would get rid of the fallback problem.


I don't think we have a fallback problem if we stick to the concept  
that matching simply follows the sitemap rules and nothing else. If it  
works today and nobody complains I don't see why it should work there  
as well.
Ok, I see that.  This will be another thing that should be clear in the 
idiots guide to authoring blocks (blocks for blockheads?).  Be 
careful to match only what you intend to override by extension.

Geoff



Re: Testing serviceable components

2003-10-10 Thread Steve K
Ugo Cei wrote:
The problem is that Woody components (like for instance 
AbstractDatatypeWidgetDefinition) are Serviceable, but ExcaliburTestCase 
provides only a (deprecated) ComponentManager instead of a 
ServiceManager.
I don't know if this will help you, but I've been experimenting with 
using the CocoonBean in my test cases.  You could create a subclass of 
the CocoonBean class that will expose the getComponentManager() method 
to your test case.  You could then use that method to create and test 
the component.

cheers,
-steve


DO NOT REPLY [Bug 23694] - [PATCH] TraversableSourceDescriptionGenerator

2003-10-10 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23694.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23694

[PATCH] TraversableSourceDescriptionGenerator

[EMAIL PROTECTED] changed:

   What|Removed |Added

 AssignedTo|[EMAIL PROTECTED]   |[EMAIL PROTECTED]


Re: Track feature requests in bugzilla?

2003-10-10 Thread Joerg Heinicke
Stefano Mazzocchi wrote:

nono, you missed my point: bugzilla forces discussion to happen over 
the issue comments. wiki, since it's hard to do communication 
overthere (as you suggest), forces you to write comments on email, 
like it should be.
And what's so bad about communication on bugzilla? Every mail is sent 
to the lists. The issues can also be discussed on the list by simply 
replying to an email. The only missing point is the real sender of a 
mail for bugzilla comments, isn't it?
yes, and the ability to sort messages in threads since every bugzilla 
email is detached.
Ah, ok. Mozilla does this for me by comparing the subject - but if the 
bug is reported, so the mail has an additional new in the subject, or 
if the bug summary changes, Mozilla fails of course.

Joerg




DO NOT REPLY [Bug 23694] - [PATCH] TraversableSourceDescriptionGenerator

2003-10-10 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23694.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23694

[PATCH] TraversableSourceDescriptionGenerator

[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED



--- Additional Comments From [EMAIL PROTECTED]  2003-10-10 17:57 ---
Patch applied, thanks!
Please test.


Re: Renaming Woody to Cocoon Forms ?

2003-10-10 Thread Tony Collen
Bertrand Delacretaz wrote:
I think there was agreement on Monday about this, do we need a vote, or 
am I mistaken about the agreement?

Naming it Cocoon Forms is a nice parallel to Cocoon Flow, and shows 
that we're betting the farm on it, which I like.
My late +1 for Cocoon Forms

We can probably keep Woody as the block name though, in homage to the 
great sandwiches delivered to the great original authors of Cocoon Forms 
;-)

-Bertrand

Regards,
tony


Re: Track feature requests in bugzilla?

2003-10-10 Thread Tony Collen
Torsten Curdt wrote:

snip;

any project that has already been going down that road?
maybe we could borrow scripts etc...
what are the php guys using anyway?
IIRC I liked that interface more than bugzilla
The PHP bug report page is located at http://bugs.php.net/.  It looks like they are using something 
they wrote themselves.


Torsten

Regards,

Tony



Re: FYI: DocSynch as a collaborative editing tool?

2003-10-10 Thread Stefano Mazzocchi
On Friday, Oct 10, 2003, at 18:15 Europe/Rome, Arje Cahn wrote:

Argh.. That's not the same as SubEthaEdit! It allows only one person 
to edit the document at a time!
...which makes it a little useless, me thinks.

--
Stefano.


Re: Testing serviceable components

2003-10-10 Thread Ugo Cei
Steve K wrote:
I don't know if this will help you, but I've been experimenting with 
using the CocoonBean in my test cases.  You could create a subclass of 
the CocoonBean class that will expose the getComponentManager() method 
to your test case.  You could then use that method to create and test 
the component.
Thank you, but I already have a ComponentManager provided by 
ExcaliburTestCase, however what I need is a ServiceManager.

Anyway, after some thinking I came to the conclusion that the class I 
want to test (o.a.c.woody.datatype.DynamicSelectionList) does not need 
either a ComponentManager or a ServiceManager. Its generateSaxFragment 
method should be passed a Source and should not get one from a 
SourceResolver that in turn it gets from a ServiceManager:

public void generateSaxFragment(ContentHandler contentHandler, Locale 
locale, Source source) throws ProcessingException, SAXException, 
IOException {
SelectionListHandler handler = new SelectionListHandler(locale);
handler.setContentHandler(contentHandler);
SourceUtil.toSAX(source, handler);
}

Why? Well, because, according to the Law of Demeter ([1]), any method of 
an object should call only methods belonging to:

- itself
- any parameters that were passed in to the method
- any objects it created
- any directly held component objects.
The current implementation of generateSaxFragment violates this law by 
calling a method on an object (Source) returned by a method called on an 
object (SourceResolver) returned by a method called on a directly held 
object (ServiceManager): two levels of indirection more than necessary. 
This creates a tight and unnecessary coupling between 
DynamicSelectionList, SourceResolver and ServiceManager.

By refactoring the way I plan to, we get the added benefit that we can 
get a Source from wherever we like, be it a ComponentManager or a 
ServiceManager or maybe some mock implementation, easing testability.

What do you people think?

	Ugo

[1]: http://www.ccs.neu.edu/home/lieber/LoD.html



Re: [RT] Updating the website

2003-10-10 Thread Tony Collen
Carsten Ziegeler wrote:
Due to my nice(?) rearranging of the docs we are not able
to update our website without breaking some external links.
And this is (to say it friendly) very bad.
But we have updated/new docs that should be published asap. So
how can we manage this?
Stefano had an impressing (wild) idea at the GT which sounds
very cool, but will unlikely not happen today or tomorrow.
I personally wanted to update the site asap, at least with
the next release for 2.1.3 - our great bug fix release.
Hmm, what was Stefano suggesting? I'd be interested to know what he's got turning in those gears in 
his brain :)

I wanted to start this RT to discuss some possibilities, so
here are some:
a) I revert the structural changes (cause in the end it's my
   fault)
+1 for reverting for now.

b) We update and don't care about external links
c) We update and care a little bit about external links and
   redirect a 404 to let's say the start page
Thoughts?
I think we need to make a giant list of all of our docs/pages, what they do, and their current place 
in the docs structure.  There's a lot of stuff out of place, one thing I always notice is the page 
talking about DELI being switched off.  For some odd reason, it just seems like this page does not 
belong there.

We might need to get away from the developer vs user notion, because depending on how much about 
Cocoon you already know, you might have to hack out a new generator (which would seem to imply 
information in the developer section) while you are really a user.

IMHO, the line between developer and user is blurred, and I think the docs need to reflect this 
somehow.  Touching back to the idea of getting a giant list of all the docs, something I might try 
is to get a bunch of notecards, and write down each doc on them.  If there's a line of documents, 
connect them all together, and shuffle them as a unit.  Post-It notes might also work well.  This 
way it's easy to move things around logically without disturbing the file system structure until we 
have everything sorted out.

From the sounds of it, we're almost at a critical point with the docs.  We NEED to make it easy to 
find things.  I've always been of the opinion that the best site docs in the open-source world exist 
on www.php.net.  They combine the official docs -- organized very well and logically -- with 
user-submitted comments, which is sometimes worth more than the real docs.  This is something we 
need to explore for future versions of the site docs, I think, but it may not happen until we have 
Cocoon serving its own docs.

Carsten 



Regards,
Tony


Re: XSP logicsheet with a recursive call template stops server

2003-10-10 Thread Joerg Heinicke
Hello Georg,

you seem to mix XSP and XSL. They are different techniques: With XSP Sax
events are *generate*d, XSL is used for *transform*ation. To get the
reason of your problem you should show us your sitemap, remove the XSL
stuff into an XSL and don't mix the document (generated by XSP) and the
XSL stylesheet.
Joerg

PS: In general such questions should be asked on Cocoon users list, you
won't have to wait so long for an answer there, while Cocoon developers
incline to ignore such mails.
[EMAIL PROTECTED] wrote:


Hi,

I use Cocoon 2.0.4.
I want to build a tree structure with nested tree elements, but I don't
know how much elements I get from a stack,  I've destinated before.
If a recursive call of the called template is made in the logicsheet (
  xsl:template name=nextBelow
xsp:element name=SELECT
  xsp:attribute name=name
xsp:expreftix.myChildName()/xsp:expr
  /xsp:attribute
  xsp:attribute name=file
xsp:expreftix.myChildFileAttr()/xsp:expr
  /xsp:attribute
  xsp:attribute name=navfile
xsp:expreftix.myChildNavFileAttr()/xsp:expr
  /xsp:attribute
xsp:attribute name=category
  xsp:expreftix.amILast()/xsp:expr
/xsp:attribute
  xsl:variable name=test 
  xsp:logic
xsp:expreftix.amILast()/xsp:expr
  /xsp:logic
  /xsl:variable
  Geo
  xsl:value-of select=$test /
  /Geo
if(eftix.getNextFromStack())
{
  xsl:call-template name=nextBelow /
}
!--  --
/xsp:element


  /xsl:template
),
the transformation of the xsp-file to a java-file fails and the server is
stopped.
It seems there is produced an endless loop by this transformation.
It is necessary for me that the elements are nested.
Is there any other possibility to produce a nested tree with unlimited
elements  with XSP and logicsheets?
I hope anybody can help me!

wbr
Georg





Re: [GT2003] Thank you

2003-10-10 Thread Joerg Heinicke
At the end and after passing the Sun Java Programmer Certification I 
will also join the thanking people. It was my first event related to 
software development and it was so impressive. The town, the meals, the 
Outerthought support (thanks, Steven, for the link and Bruno for the 
plan of Gent - by the way: what's the difference between Gent and 
Ghent?), the lectures, the discussions and talks and especially the 
people/community. So many similar experiences other people also had when 
using and escpecially when not using Cocoon!

I appreciated this event very much and am looking forward for the next 
one. I can only recommend everybody to attend the next GetTogether.

Joerg



RE: [RT] Separation of Blocks and Avalon

2003-10-10 Thread Reinhard Poetz

From: Carsten Ziegeler

 
 Reinhard Poetz wrote:
we need the 2.1 repository to be able to do 2.1.x releases.
   Otherwise
we would ship alpha code and I think people building their
applications upon 2.1 wouldn't be very happy with this.
   
   That's one reason why CVS has branches.
  
  a new branch or a new repository? IIRC we decided *not* to 
 create any
  branches but to create new repositories instead.
  
 
 PLEASE, don't start this discussion over and over again. We 
 have (after
 a long painful discussion period) decided (or better reassured) that
 we create a new repository for 2.2. And Stefano wanted to contact
 infrastructure to create the 2.2 one.

I hope my comment wasn't misleading. I support fully the community
decision to create new repositories instead of branches and I'm not
interested in leading this discussion again and again.

Reinhard



Re: cvs commit: cocoon-2.1/src/webapp/WEB-INF cocoon.xconf

2003-10-10 Thread Stefano Mazzocchi
On Friday, Oct 10, 2003, at 12:51 Europe/Rome, Bruno Dumon wrote:

So until someone has time to try this out and update the
excalibur-xmlutil package, we're stuck with reuse-parsers set to false.
Sylvain? ;-)

--
Stefano, with gentle voice and french accent


Re: [RT] what cocoon forms lack

2003-10-10 Thread Stefano Mazzocchi
On Friday, Oct 10, 2003, at 10:26 Europe/Rome, Sylvain Wallez wrote:

Stefano Mazzocchi wrote:

Thanks to the great energy that Sylvain is able to put into things, 
we now have a community consensus on making woody the official cocoon 
form framework.

On the trip back from the GT, I spent some time talking to David 
Nuescheler. A while ago, I suggested him to take a look at linotype 
and he liked the concept and told his guys to use it.

On the train, he told me: you know, the idea of making linotype a 
woody widget is not so far off as it seems, we did our own form 
framework and editing framework and came up with nothing that could 
distinguish the two, so we are making an effort to merge the two.

This triggered an incredible amount of thinking... during the hours 
that took me to get back and thanks to sylvain's handouts, I was able 
to have a solid reference for my thinking.

   - o -

There are two widgets that cforms are missing:

 - editor
 - uploader


Hey, you know what, some of the people that went to me after my talk 
proposed just the same ;-)
great

I see two potential types of editor:

 - plain text
 - stuctured text
Rich text is one of the potential structured text.

I dislike textarea as a style if an string input field. it doesn't 
feel right: a textarea is the style of an editor.


Mmmh... What I understand above is that you distinguish two types of 
string inputs:
- single line inputs that go through a regular input
- multi-line strings or structured documents that go through an editor 
widget of which textarea is a particular representation (styling, 
in the current terminology). Am I right?
yes

This also calls for an additional built-in field datatype: xml, that 
would automatically parse the input string upon submit. We can also 
have specialized validators for this datatype that check that the 
document is valid according to some kind of schema.
I'm thinking that naming a widget based on what it creates is a bad 
pattern. I think we should name the widget on what it does.

editor in structure text mode, will generate XML i see no reason 
for a structure text mode to return something else.

I also see two potential types of uploaders:

 - active
 - passive
Passive uploaders are the usual ones, the ones with a input field and 
a browse button. (normally native widgets that are not CSS 
modifiable)

Active uploaders are the one that react on the content being uploaded 
and show it (like the image uplaoder in linotype).


Active upload is really cool.
yep

An associated need for upload, along with drag'n dropping images in an 
editor, is for generic binary attachements to a document (in the 
general meaning of document). Graphically, this could be a drop zone 
associated to the (growing) list of file names.
uploader mode=list/?

The idea is the following: both widgets make available to the 
controller (after having been processed), an object model that 
contains the content. The template generators should be able to 
process the object model of a structured text and crawl it 
transparently to generate SAX events.
This calls again for the xml datatype, with an associated set of 
converters (xml/wiki/slop parsers).
no, again, I think that both you and Bertrand tend to look at this from 
a server side perspective.

- o -

Note, however that these widgets don't resolve the need for a 
semi-structured editing capabilities of the page (a-la 
contentEditable), but they go a pretty long way to provide 
capabilities.

Another interesting feature would be providing different modes for 
the editor, just like different tab panes that react on the content.

In linotype you have Wysiwig and markup, introducing a wiki mode is 
in my todo list.

I would love to have linotype as a cform widget with pluggable 
editing modes that share content: so that you can write your wiki 
text, then click on the wysiwig tag and edit content like that, back 
and forward, you can cut/paste stuff in and out.
Implementation-wise, having multiple simultaneous formats client-side 
may be require tricky javascript development.
don't think so. it's basically parsing a string, you'd not be using any 
browser needs, just pure javascript regular expressions.

Since we must have the parsers for these formats server-side
why?

we can use the submit-on-change feature so that clicking on a format 
tab does a round-trip to the server to convert the format.
that would be orders of magnitude slower and much more subjective to 
failure! I would love to reduce roundtrips (even for groups BTW, I 
think they should be handled client side)

now, what do you think?


I think: kewl ;-)
all right, so, how do we move on?

--
Stefano.


[OT] Digital Video Amarcord

2003-10-10 Thread Stefano Mazzocchi
I started processing the GT video tapes.

Each talk is about 50/60 minutes long, DV compression is about 
10Gb/hour. Means that I have to process 60Gb of stuff.

I have everything on tape, luckily enough, because I have only 20Gb of 
disk left (only 20gb of disk, can you believe that I thought that? 
god)

I'm encoding using iMovie, pretty cool, very simple to use and very 
efficient. Final Cut Pro or AVID Digital Studio are another planet, but 
hey, cutting and post-production here is *really* simple ;-)

I'm encoding with DivX 5.1 beta, shaky and slow as hell, but it seems 
to be portable across all systems.

It needs 8 hours per hour on my G4 1Ghz (at max processing quality). 
This means that it would take me 1.5 CPU days to encode the GT, 
plus another few days to upload it. hope my CPU doesn't melt down.

I encoded at video at single pass, constant rate, 320x240, 100kbps and 
audio at mp3 16bit 22Khz 64kbps mono.

Video artifacts are terrible when there is some motion (divx is really 
poor at small bitrate) but audio is pretty good.

Interesting enough, encoding video at 200Kbp didn't change the picture 
much (artifacts were reduced, but still not good enough to see 
anything, so I left them like that).

Expected size per presentation is around 50Mb/60Mb, which isn't bad at 
all.

In case you have suggestions, yell now because each mistake is 8 hours 
of processing :-(

I'll make the first talk available tomorrow, after merlino (my laptop) 
finishes crunching it to night.

and then I'll wait for comment before moving on.

time to go to bed now.

--
Stefano.


windows vs. file protocol paths

2003-10-10 Thread Joerg Heinicke
map:match pattern=jh/**
  map:mount check-reload=yes src=file:///D:/xml/sitemap.xmap 
uri-prefix=jh/
/map:match

finds the sitemap and searches for referenced stylesheets in this 
sitemap relative to *D:/xml* and so *finds* the stylesheets.

map:match pattern=jh/**
  map:mount check-reload=yes src=D:\xml\sitemap.xmap uri-prefix=jh/
/map:match
finds the sitemap and searches for referenced stylesheets in this 
sitemap relative to *webapp's context* and *does not find* them.

I don't know if this is a new feature, but at least the behaviour 
should be consistent: either Windows paths are allowed (and do work) or 
not. I guess somebody knows where to fix it?

Joerg



Re: windows vs. file protocol paths

2003-10-10 Thread David Crossley
Joerg Heinicke wrote:
 map:match pattern=jh/**
map:mount check-reload=yes src=file:///D:/xml/sitemap.xmap 
 uri-prefix=jh/
 /map:match
 
 finds the sitemap and searches for referenced stylesheets in this 
 sitemap relative to *D:/xml* and so *finds* the stylesheets.
 
 map:match pattern=jh/**
map:mount check-reload=yes src=D:\xml\sitemap.xmap uri-prefix=jh/
 /map:match
 
 finds the sitemap and searches for referenced stylesheets in this 
 sitemap relative to *webapp's context* and *does not find* them.
 
 I don't know if this is a new feature, but at least the behaviour 
 should be consistent: either Windows paths are allowed (and do work) or 
 not. I guess somebody knows where to fix it?
 
 Joerg

Nothing new, it has always been like that - you must use file:// URLs
See explanation here:
http://cocoon.apache.org/2.1/userdocs/concepts/sitemap.html#File%3A+URLs

--David




Re: [RT] Updating the website

2003-10-10 Thread David Crossley
Bertrand Delacretaz wrote:
 Carsten Ziegeler a écrit :
  ...
  c) We update and care a little bit about external links and
 redirect a 404 to let's say the start page
 
 +0.5  (meaning ok but cannot help ATM)
 
 but maybe to an explanations page (we're remodeling) instead of the 
 start page
 
 -Bertrand

No matter which option that we choose, i think that this
redirect to explanation page is a good thing.

--David




Re: [OT] Digital Video Amarcord

2003-10-10 Thread Antonio Gallardo
Great job Stefano!

I hope soon we will be able to download it from the Apache website! ;)

Best Regards,

Antonio Gallardo





Re: [OT] Digital Video Amarcord

2003-10-10 Thread Geoff Howard
Stefano Mazzocchi wrote:

I started processing the GT video tapes.

Each talk is about 50/60 minutes long, DV compression is about 
10Gb/hour. Means that I have to process 60Gb of stuff.
...

It needs 8 hours per hour on my G4 1Ghz (at max processing quality). 
This means that it would take me 1.5 CPU days to encode the GT, plus 
another few days to upload it. hope my CPU doesn't melt down.
Do you have a dvd burner?  Maybe it'd be better use of bandwidth to just 
burn it and mail it to the servers (they're here in the states, right?).

Geoff



Re: [gt2003] thank YOU !

2003-10-10 Thread Andrew Savory
On Thu, 9 Oct 2003, Steven Noels wrote:

 rehearsing Bach with soaked pants

I should point out that's because of the torrential rain that morning on
the way to the event location, and not because David was nervous ;-)

Andrew.

-- 
Andrew SavoryEmail: [EMAIL PROTECTED]
Managing Director  Tel:  +44 (0)870 741 6658
Luminas Internet Applications  Fax:  +44 (0)700 598 1135
Orixo alliance: http://www.orixo.com/  Web:www.luminas.co.uk


  1   2   >