Re: [5.next] Progress, more ideas and native connector benchmarks

2004-08-11 Thread Remy Maucherat
Some updates ...
Remy Maucherat wrote:
* Default global and per-host configurations:
- conf/engine/host/context.xml.default
- conf/engine/host/web.xml.default
- conf/context.xml
- conf/web.xml
This will lead to the removal of the DefaultContext interface, since 
this will fully replace the functionality (while being very simple to 
implement and actually complete functionality wise; I have no idea why 
I never thought of doing it this way, since the default web.xml is 
implemented like that). For the admin webapp support for 
DefaultContext, we would simply need to register a Context instance in 
JMX with the usual DefaultContext MBean name, and tweak a little.
So I'll now proceed with removing DefaultContext and creating the new 
MBeans.

* HTML host manager servlet (allows easily creating host and 
preconfiguring them - ex: with the manager webapp installed, and a 
default context file). I think this would be useful (?).
My next big item :)
* The other features I mentioned earlier: startup time optimization, 
removal of stuff which isn't used (such as container listeners).
In other features, I added package renaming for DBCP. It is less useful 
with Ant IMO. I'll experiment a little, although untangling the javac 
task seems rather hard ;)

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress, more ideas and native connector benchmarks

2004-08-11 Thread Bill Barker

- Original Message -
From: Remy Maucherat [EMAIL PROTECTED]
To: Tomcat Developers List [EMAIL PROTECTED]
Sent: Wednesday, August 11, 2004 11:04 AM
Subject: Re: [5.next] Progress, more ideas and native connector benchmarks


Some updates ...

Remy Maucherat wrote:

 * Default global and per-host configurations:
 - conf/engine/host/context.xml.default
 - conf/engine/host/web.xml.default
 - conf/context.xml
 - conf/web.xml
 This will lead to the removal of the DefaultContext interface, since
 this will fully replace the functionality (while being very simple to
 implement and actually complete functionality wise; I have no idea why
 I never thought of doing it this way, since the default web.xml is
 implemented like that). For the admin webapp support for
 DefaultContext, we would simply need to register a Context instance in
 JMX with the usual DefaultContext MBean name, and tweak a little.

So I'll now proceed with removing DefaultContext and creating the new
MBeans.


Actually, admin doesn't really handle DC now, so anything would be an
improvement there :).

 * HTML host manager servlet (allows easily creating host and
 preconfiguring them - ex: with the manager webapp installed, and a
 default context file). I think this would be useful (?).

My next big item :)

 * The other features I mentioned earlier: startup time optimization,
 removal of stuff which isn't used (such as container listeners).

In other features, I added package renaming for DBCP. It is less useful
with Ant IMO. I'll experiment a little, although untangling the javac
task seems rather hard ;)


It certainly made Gump unhappy :).

Rémy


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



This message is intended only for the use of the person(s) listed above as the 
intended recipient(s), and may contain information that is PRIVILEGED and 
CONFIDENTIAL.  If you are not an intended recipient, you may not read, copy, or 
distribute this message or any attachment. If you received this communication in 
error, please notify us immediately by e-mail and then delete all copies of this 
message and any attachments.

In addition you should be aware that ordinary (unencrypted) e-mail sent through the 
Internet is not secure. Do not send confidential or sensitive information, such as 
social security numbers, account numbers, personal identification numbers and 
passwords, to us via ordinary (unencrypted) e-mail.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Re: [5.next] Progress, more ideas and native connector benchmarks

2004-08-11 Thread Remy Maucherat
Bill Barker wrote:
It certainly made Gump unhappy :).
 

Ooops, yes, it's going to be a problem. It's quite hard to build my 
custom JAR :(

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress, more ideas and native connector benchmarks

2004-07-28 Thread Remy Maucherat
Remy Maucherat wrote:
Bill Barker wrote:
- Remove Deployer and DefaultContext. The new stuff looks like a better
replacement.
I did that but didn't commit yet. The management side for the default 
context would need to be redone (it's not very difficult, I think).
The clustering will need updates, but I don't think it's very 
difficult either.
Ok. So during testing of the new undeploy code, I ran into some bug 
(apparently, but I can't reproduce it anymore) where the undeploy 
removed half of my work partition (I didn't realize what was going on 
fast enough ;) ), and I'm restoring stuff with my modem right now. I did 
lose some updates, of course (incl the removal of the two interfaces - 
of course, it's not very hard to put it back, so it's not a big issue). 
So be careful for now with the undploy link on the HTML manager, if 
you're using a descriptor pointing to a folder outside of the TC root ;) 
There should be code to prevent deletion of anything outside of the host 
appBase, but somehow it didn't work (or I simply forgot to recompile 
using it before testing, as I can't reproduce the problem anymore :( ).

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


RE: [5.next] Progress, more ideas and native connector benchmarks

2004-07-28 Thread Shapira, Yoav
Hi,
You know, I've been meaning to address the Undeploy considered dangerous bugzilla 
item by adding a JavaScript confirmation dialog around the undeploy action in the HTML 
manager.  Too bad I hadn't gotten around to it before your mishap ;(

Yoav Shapira
Millennium Research Informatics


-Original Message-
From: Remy Maucherat [mailto:[EMAIL PROTECTED]
Sent: Wednesday, July 28, 2004 6:27 AM
To: Tomcat Developers List
Subject: Re: [5.next] Progress, more ideas and native connector benchmarks

Remy Maucherat wrote:

 Bill Barker wrote:

 - Remove Deployer and DefaultContext. The new stuff looks like a better
 replacement.

 I did that but didn't commit yet. The management side for the default
 context would need to be redone (it's not very difficult, I think).
 The clustering will need updates, but I don't think it's very
 difficult either.

Ok. So during testing of the new undeploy code, I ran into some bug
(apparently, but I can't reproduce it anymore) where the undeploy
removed half of my work partition (I didn't realize what was going on
fast enough ;) ), and I'm restoring stuff with my modem right now. I did
lose some updates, of course (incl the removal of the two interfaces -
of course, it's not very hard to put it back, so it's not a big issue).
So be careful for now with the undploy link on the HTML manager, if
you're using a descriptor pointing to a folder outside of the TC root ;)
There should be code to prevent deletion of anything outside of the host
appBase, but somehow it didn't work (or I simply forgot to recompile
using it before testing, as I can't reproduce the problem anymore :( ).

Rémy


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [5.next] Progress, more ideas and native connector benchmarks

2004-07-28 Thread Remy Maucherat
Shapira, Yoav wrote:
Hi,
You know, I've been meaning to address the Undeploy considered dangerous bugzilla item by adding a JavaScript confirmation dialog around the undeploy action in the HTML manager.  Too bad I hadn't gotten around to it before your mishap ;(
 

I would have clicked yes: I wanted to test it. And if you use the Ant 
task (which does the same), there's no confirmation.

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress, more ideas and native connector benchmarks

2004-07-27 Thread Remy Maucherat
Bill Barker wrote:
I'll volunteer for the admin webapp stuff.  I enjoy deleting stuff from
there ;-).
 

It's at the end of my list right now, so I wont't get there for a while.
I committed a few things:
- The new deployer is getting there. Missing is the support for the
manager webapp, but this won't be too hard to write.
 

Still a few adjustments needed (the two fixmes which are in the file).
- Update manager webapp, and add support for it in HostConfig (incl JMX
registration).
 

The new manager is considerably simpler, but I need to test more of its 
features.
BTW, on Windows, the minimum to be able to use it is to set 
antiJARLocking (otherwise, stuff like Xerces are really good at JAR 
locking). antiResourceLocking is likely more reliable, of course.

- Remove Deployer and DefaultContext. The new stuff looks like a better
replacement.
 

I did that but didn't commit yet. The management side for the default 
context would need to be redone (it's not very difficult, I think).
The clustering will need updates, but I don't think it's very difficult 
either.

- HTML host manager servlet (allows easily creating host and
preconfiguring them - ex: with the manager webapp installed, and a
default context file).
- Try to optimize startup time, if possible.
 

I'll do one of these next.
- As mentioned in my commit message, I don't think the dynamic updates
to the naming environment are useful. The code which does that is
relatively complex (although it's not as bad as before with the
ResourceParams). My opinion is that if something is not useful, then it
should go ;) Any comments on that fancy feature ?
 

I forgot about the global resources, so I think the dynamic updates are 
sort of useful. At least it's a lot simpler now that the ResourceParams 
is gone.

- I'll have a lot of work updating the docs now :-P (I guess the fun is
nearly over :( )
- The admin webapp will need some tweaks after removing the DefaultContext.
 

So I'll commit the removal of Deployer and DefaultContext next. Is that ok ?
Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress, more ideas and native connector benchmarks

2004-07-26 Thread Costin Manolache
Remy Maucherat wrote:
Costin Manolache wrote:
Remy Maucherat wrote:
Costin Manolache wrote:
Both difference and similarity :-).
Eclipse ( osgi actually ) has a similar flat loader implementation, 
but with finer control over what is exported/imported and pretty 
strong versioning. In addition osgi supports permissions on 
importing packages.
The reloading of modules is a bit more complicated than in jboss ( 
where you just change the jar ).
From tomcat point of view - the implementation should be very 
similar with jboss.

What I like is the standardized and simpler behavior of class 
loaders, with ability to reload and upgrade any module ( like jboss ).


This classloader looks like it does stuff :)
I recommend plugging it in as usual, with the Loader interface. Is 
that ok ?

It should be, plugging tomcat into anything is usually simple.
The current tomcat loading mechanism - with 2 hierarchies of class 
loaders and the delegation hacks, plus the very rigid isolation 
between webapps - is far from perfect.

Again, it's a matter of interpreting the servlet spec - they do have 
some clear requirements on class loading, but I can't find any place 
where they forbid using other standards. I know adding an optional 
OSGI manifest could be controversial - but the benefits will be quite 
big. It would mean you can finally have arbitrary multiple versions of 
the same package, or have fine control ( using java permissions ) over 
what packages can be imported in a webapp or plugin. And it would mean 
an unified model for both webapps and plugins ( connectors, etc ).

The other very interesting aspects of eclipse are the extension point 
and the ( extreme ) laziness in loading plugins.

I imagined something a bit like that (with plenty of CLs each 
containing a particular version of a JAR), but:
- I got a big headache, and I don't think I'm capable of not screwing it 
up :D (so I decided to keep the current CL, which kinda works)
- I would take me a lot of time, and it wouldn't be useful to my 
employer, so they wouldn't be too happy in the end

I'd be really curious to see how you implemented all that stuff :)
Well, I don't have a lot of free time, so reimplementing all this stuff 
is not a choice, and I don't want the headaches :-).

Eclipse, oscar, knopflerfish ( last 2 with BSD licence ) already 
implement the class loaders - and there osgi standard is available in 
many other implementations ( sun embedded web server, etc ).

Jboss and eclipse use the same class loading mechanism - and the same 
model for plugins. It would be really nice if jboss will make one 
extra step and add the missing features from osgi ( fine control of 
export/import and use the version information to match the loader ), and
even better if they would do this using the standard osgi manifest.

I think the granularity of jboss integration is a bit high - what I'm 
trying is to have each plugin( connector, auth, etc) as well as each 
webapp in a separate bundle - so you can add/remove/upgrade plugins just 
like eclipse does, without restart and with on-demand loading. ( I 
haven't checked the last jboss tough - maybe it alreay does that :-)

Anyway - it's work in progress, I don't know all details - the basic 
stuff obviouslty works ( since it works in jobss as well ), I can 
load/unload tomcat and individual connectors from eclipse console 
without problems.

Costin

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress, more ideas and native connector benchmarks

2004-07-26 Thread Remy Maucherat
I committed a few things:
- The new deployer is getting there. Missing is the support for the 
manager webapp, but this won't be too hard to write.
- I redid partially the naming. Now the NamingResource object is the 
main object, and Context is not polluted.

My list is:
- Update manager webapp, and add support for it in HostConfig (incl JMX 
registration).
- Remove Deployer and DefaultContext. The new stuff looks like a better 
replacement.
- HTML host manager servlet (allows easily creating host and 
preconfiguring them - ex: with the manager webapp installed, and a 
default context file).
- Try to optimize startup time, if possible.
- As mentioned in my commit message, I don't think the dynamic updates 
to the naming environment are useful. The code which does that is 
relatively complex (although it's not as bad as before with the 
ResourceParams). My opinion is that if something is not useful, then it 
should go ;) Any comments on that fancy feature ?
- I'll have a lot of work updating the docs now :-P (I guess the fun is 
nearly over :( )
- The admin webapp will need some tweaks after removing the DefaultContext.

The commit message on my last commit didn't seem to go through, so here 
it is:
- As I discussed earlier, switch to a nicer looking syntax for naming 
stuff, using setAllProperties. This simplifies the code a lot.
- Example:
   Resource name=UserDatabase auth=Container
 type=org.apache.catalina.UserDatabase
  description=User database that can be updated and saved
  factory=org.apache.catalina.users.MemoryUserDatabaseFactory
 pathname=conf/tomcat-users.xml /
- Remove the horrible ResourceParams, and add new objects for 
transaction and resourceRefs.
- At the same time, big cleanup of the code.
- Removing the (completely useless) facading the Context was doing for 
the NamingResources object. This is something I couldn't do
 in 4.1.x because we didn't want to change the API. The last thing I 
didn't remove is some messaging stuff. What's that ?
- Some tweaking will likely be needed (for example, the save-to-XML code 
needs to save all the extra properties). However, a lot
 of stuff won't need to be adjusted, as it was using NamingResources (I 
don't think the naming support in the admin webapp is going
 to need anything).
- I'm wondering how useful it is to be able to dynamically update the 
associated naming context. I think we should remove that, and
 just reload the webapp (since I think most webapps won't be able to 
handle dynamic changes in the ENC). I'll post about that in my
 next progress email.

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress, more ideas and native connector benchmarks

2004-07-26 Thread Bill Barker
I'll volunteer for the admin webapp stuff.  I enjoy deleting stuff from
there ;-).

- Original Message -
From: Remy Maucherat [EMAIL PROTECTED]
To: Tomcat Developers List [EMAIL PROTECTED]
Sent: Monday, July 26, 2004 9:27 AM
Subject: Re: [5.next] Progress, more ideas and native connector benchmarks


I committed a few things:
- The new deployer is getting there. Missing is the support for the
manager webapp, but this won't be too hard to write.
- I redid partially the naming. Now the NamingResource object is the
main object, and Context is not polluted.

My list is:
- Update manager webapp, and add support for it in HostConfig (incl JMX
registration).
- Remove Deployer and DefaultContext. The new stuff looks like a better
replacement.
- HTML host manager servlet (allows easily creating host and
preconfiguring them - ex: with the manager webapp installed, and a
default context file).
- Try to optimize startup time, if possible.
- As mentioned in my commit message, I don't think the dynamic updates
to the naming environment are useful. The code which does that is
relatively complex (although it's not as bad as before with the
ResourceParams). My opinion is that if something is not useful, then it
should go ;) Any comments on that fancy feature ?
- I'll have a lot of work updating the docs now :-P (I guess the fun is
nearly over :( )
- The admin webapp will need some tweaks after removing the DefaultContext.

The commit message on my last commit didn't seem to go through, so here
it is:
- As I discussed earlier, switch to a nicer looking syntax for naming
stuff, using setAllProperties. This simplifies the code a lot.
- Example:
Resource name=UserDatabase auth=Container
  type=org.apache.catalina.UserDatabase
   description=User database that can be updated and saved
   factory=org.apache.catalina.users.MemoryUserDatabaseFactory
  pathname=conf/tomcat-users.xml /
- Remove the horrible ResourceParams, and add new objects for
transaction and resourceRefs.
- At the same time, big cleanup of the code.
- Removing the (completely useless) facading the Context was doing for
the NamingResources object. This is something I couldn't do
  in 4.1.x because we didn't want to change the API. The last thing I
didn't remove is some messaging stuff. What's that ?
- Some tweaking will likely be needed (for example, the save-to-XML code
needs to save all the extra properties). However, a lot
  of stuff won't need to be adjusted, as it was using NamingResources (I
don't think the naming support in the admin webapp is going
  to need anything).
- I'm wondering how useful it is to be able to dynamically update the
associated naming context. I think we should remove that, and
  just reload the webapp (since I think most webapps won't be able to
handle dynamic changes in the ENC). I'll post about that in my
  next progress email.

Rémy


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



This message is intended only for the use of the person(s) listed above as the 
intended recipient(s), and may contain information that is PRIVILEGED and 
CONFIDENTIAL.  If you are not an intended recipient, you may not read, copy, or 
distribute this message or any attachment. If you received this communication in 
error, please notify us immediately by e-mail and then delete all copies of this 
message and any attachments.

In addition you should be aware that ordinary (unencrypted) e-mail sent through the 
Internet is not secure. Do not send confidential or sensitive information, such as 
social security numbers, account numbers, personal identification numbers and 
passwords, to us via ordinary (unencrypted) e-mail.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Re: [5.next] Progress, more ideas and native connector benchmarks

2004-07-25 Thread Remy Maucherat
Costin Manolache wrote:
Remy Maucherat wrote:
Costin Manolache wrote:
Both difference and similarity :-).
Eclipse ( osgi actually ) has a similar flat loader implementation, 
but with finer control over what is exported/imported and pretty 
strong versioning. In addition osgi supports permissions on 
importing packages.
The reloading of modules is a bit more complicated than in jboss ( 
where you just change the jar ).
From tomcat point of view - the implementation should be very 
similar with jboss.

What I like is the standardized and simpler behavior of class 
loaders, with ability to reload and upgrade any module ( like jboss ).

This classloader looks like it does stuff :)
I recommend plugging it in as usual, with the Loader interface. Is 
that ok ?

It should be, plugging tomcat into anything is usually simple.
The current tomcat loading mechanism - with 2 hierarchies of class 
loaders and the delegation hacks, plus the very rigid isolation 
between webapps - is far from perfect.

Again, it's a matter of interpreting the servlet spec - they do have 
some clear requirements on class loading, but I can't find any place 
where they forbid using other standards. I know adding an optional 
OSGI manifest could be controversial - but the benefits will be quite 
big. It would mean you can finally have arbitrary multiple versions of 
the same package, or have fine control ( using java permissions ) over 
what packages can be imported in a webapp or plugin. And it would mean 
an unified model for both webapps and plugins ( connectors, etc ).

The other very interesting aspects of eclipse are the extension point 
and the ( extreme ) laziness in loading plugins.
I imagined something a bit like that (with plenty of CLs each 
containing a particular version of a JAR), but:
- I got a big headache, and I don't think I'm capable of not screwing it 
up :D (so I decided to keep the current CL, which kinda works)
- I would take me a lot of time, and it wouldn't be useful to my 
employer, so they wouldn't be too happy in the end

I'd be really curious to see how you implemented all that stuff :)
Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress, more ideas and native connector benchmarks

2004-07-23 Thread Costin Manolache
Remy Maucherat wrote:
Costin Manolache wrote:
Remy Maucherat wrote:
Costin Manolache wrote:
Quick question - did you had any discussion on class loaders for 
5.next?
It's one area I'm playing with, I want to make sure I'm not going in 
oposite direction :-)

I'll tweak the StandardCL to do a bit the same as the WebappCL (ie, 
try to make it faster). I'll also remove the anti locking hacks which 
are in WebappCL.

Ok. I'm experimenting with having tomcat use other class loaders ( for 
example if embedded in another app, or used with a different runtime - 
like eclipse OSGI  ).

In JBoss, the default is to use the JBoss loader. Is there any big 
difference ?
Both difference and similarity :-).
Eclipse ( osgi actually ) has a similar flat loader implementation, but 
with finer control over what is exported/imported and pretty strong 
versioning. In addition osgi supports permissions on importing packages.
The reloading of modules is a bit more complicated than in jboss ( where 
you just change the jar ).
From tomcat point of view - the implementation should be very similar 
with jboss.

What I like is the standardized and simpler behavior of class loaders, 
with ability to reload and upgrade any module ( like jboss ).


Don't know what dependency injection is, but I hope the next spec 
won't invent yet another way to do configuration.

Sorry for using hype words. I got contaminated, it can happen to anyone. 
I'll try to shake it off now. I apologise to the community for that, and 
I won't do it again (hopefully) ;)
Well, when I see a buzz word I don't know I try to search it - and what 
I found on dependency injection is scary ( i.e. avalon and friends ).

Costin
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress, more ideas and native connector benchmarks

2004-07-23 Thread Remy Maucherat
Shapira, Yoav wrote:
* Default global and per-host configurations:
- conf/engine/host/context.xml.default
- conf/engine/host/web.xml.default
- conf/context.xml
- conf/web.xml
This will lead to the removal of the DefaultContext interface, since
this will fully replace the functionality (while being very simple to
implement and actually complete functionality wise; I have no idea why
   

I
 

never thought of doing it this way, since the default web.xml is
implemented like that). For the admin webapp support for
   

DefaultContext,
 

we would simply need to register a Context instance in JMX with the
usual DefaultContext MBean name, and tweak a little.
   

+1, good idea.
 

I'm getting somewhere with the revised HostConfig and ContextConfig 
classes. I'll commit stuff this evening as a backup. Right now, it 
builds (with JDK 1.5 only at the moment), and it sort of runs, but many 
things aren't done in HostConfig. I'll need to modify the manager webapp 
when HostConfig is done (but since this will be for removing code from 
there, it won't be too hard).

When it works, I'll proceed with removing the interfaces which start 
with a 'D' (Deployer and DefaultContext).

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress, more ideas and native connector benchmarks

2004-07-23 Thread Remy Maucherat
Costin Manolache wrote:
Don't know what dependency injection is, but I hope the next spec 
won't invent yet another way to do configuration.

Sorry for using hype words. I got contaminated, it can happen to 
anyone. I'll try to shake it off now. I apologise to the community 
for that, and I won't do it again (hopefully) ;)

Well, when I see a buzz word I don't know I try to search it - and 
what I found on dependency injection is scary ( i.e. avalon and 
friends ).
I like the concept a lot more now that it relies less on static typing 
and annoyances (aka interfaces), and is quite transparent. I'm not 
willing to use it on anything for now, don't worry.

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress, more ideas and native connector benchmarks

2004-07-23 Thread Remy Maucherat
Costin Manolache wrote:
Both difference and similarity :-).
Eclipse ( osgi actually ) has a similar flat loader implementation, 
but with finer control over what is exported/imported and pretty 
strong versioning. In addition osgi supports permissions on importing 
packages.
The reloading of modules is a bit more complicated than in jboss ( 
where you just change the jar ).
From tomcat point of view - the implementation should be very similar 
with jboss.

What I like is the standardized and simpler behavior of class loaders, 
with ability to reload and upgrade any module ( like jboss ).
This classloader looks like it does stuff :)
I recommend plugging it in as usual, with the Loader interface. Is that ok ?
Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress, more ideas and native connector benchmarks

2004-07-23 Thread Costin Manolache
Remy Maucherat wrote:
Costin Manolache wrote:
Both difference and similarity :-).
Eclipse ( osgi actually ) has a similar flat loader implementation, 
but with finer control over what is exported/imported and pretty 
strong versioning. In addition osgi supports permissions on importing 
packages.
The reloading of modules is a bit more complicated than in jboss ( 
where you just change the jar ).
From tomcat point of view - the implementation should be very similar 
with jboss.

What I like is the standardized and simpler behavior of class loaders, 
with ability to reload and upgrade any module ( like jboss ).

This classloader looks like it does stuff :)
I recommend plugging it in as usual, with the Loader interface. Is that 
ok ?
It should be, plugging tomcat into anything is usually simple.
The current tomcat loading mechanism - with 2 hierarchies of class 
loaders and the delegation hacks, plus the very rigid isolation between 
webapps - is far from perfect.

Again, it's a matter of interpreting the servlet spec - they do have 
some clear requirements on class loading, but I can't find any place 
where they forbid using other standards. I know adding an optional OSGI 
manifest could be controversial - but the benefits will be quite big. It 
would mean you can finally have arbitrary multiple versions of the same 
package, or have fine control ( using java permissions ) over what 
packages can be imported in a webapp or plugin. And it would mean an 
unified model for both webapps and plugins ( connectors, etc ).

The other very interesting aspects of eclipse are the extension point 
and the ( extreme ) laziness in loading plugins.

Costin

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


RE: [5.next] Progress, more ideas and native connector benchmarks

2004-07-22 Thread Shapira, Yoav

Hola,

* Redo naming resources configuration using setAllProperties rule to
make the XML less verbose.
Example:
  Resource name=bean/MyBeanFactory auth=Container
type=com.mycompany.MyBean
factory=org.apache.naming.factory.BeanFactory
bar=23/

I personally really like this (and use setAllProperties extensively in
my own projects).  The only knock against this approach is that the
Servlet Spec uses the verbose param-name/param-value pairs all over
the place, and being a servlet container we may wish to stick to the
same spirit.

* Default global and per-host configurations:
- conf/engine/host/context.xml.default
- conf/engine/host/web.xml.default
- conf/context.xml
- conf/web.xml
This will lead to the removal of the DefaultContext interface, since
this will fully replace the functionality (while being very simple to
implement and actually complete functionality wise; I have no idea why
I
never thought of doing it this way, since the default web.xml is
implemented like that). For the admin webapp support for
DefaultContext,
we would simply need to register a Context instance in JMX with the
usual DefaultContext MBean name, and tweak a little.

+1, good idea.

* HTML host manager servlet (allows easily creating host and
preconfiguring them - ex: with the manager webapp installed, and a
default context file). I think this would be useful (?).

There have been several requests along these lines on the tomcat-user
mailing list, so I'd say it'd be useful.

I think I'm nearing the point where I'll submit a release plan for this
branch (let's say at the end of next week), since I don't see much more
to add for now besides more tweaking.

Looking forward to it.

What is the status of Logger removal/rewriting/rethinking?

Yoav



This e-mail, including any attachments, is a confidential business communication, and 
may contain information that is confidential, proprietary and/or privileged.  This 
e-mail is intended only for the individual(s) to whom it is addressed, and may not be 
saved, copied, printed, disclosed or used by anyone else.  If you are not the(an) 
intended recipient, please immediately delete this e-mail from your computer system 
and notify the sender.  Thank you.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [5.next] Progress, more ideas and native connector benchmarks

2004-07-22 Thread Costin Manolache
Quick question - did you had any discussion on class loaders for 5.next?
It's one area I'm playing with, I want to make sure I'm not going in 
oposite direction :-)

BTW - another feature idea would be to extend the JMX configuration into 
the webapps, i.e. allow jmx apps to view and configure context and 
servlet params, and support servlets implementing MBean interfaces. The 
init(ServletConfig) model is pretty archaic :-)

Costin
Remy Maucherat wrote:
I've had a few more feature ideas (actually, it's more tweaks and simple 
things than big development for the most part), and I'm refining the way 
I'll be implementing the new deployer.

* Parse element Context (if context config file) in HostConfig, for 
className, path and docBase attributes.

* Parse remaining of element Context in ContextConfig (after 
defaultcontext).

* unpackWars in HostConfig (in most cases, it's done there already).
* Any resource removal when undeploy in HostConfig.
* anti-resource-locking (optional feature) in ContextConfig (by mutating 
the docBase, and copying the whole webapp elsewhere).

* Redo naming resources configuration using setAllProperties rule to 
make the XML less verbose.
Example:
 Resource name=bean/MyBeanFactory auth=Container
   type=com.mycompany.MyBean 
factory=org.apache.naming.factory.BeanFactory
   bar=23/

* Default global and per-host configurations:
- conf/engine/host/context.xml.default
- conf/engine/host/web.xml.default
- conf/context.xml
- conf/web.xml
This will lead to the removal of the DefaultContext interface, since 
this will fully replace the functionality (while being very simple to 
implement and actually complete functionality wise; I have no idea why I 
never thought of doing it this way, since the default web.xml is 
implemented like that). For the admin webapp support for DefaultContext, 
we would simply need to register a Context instance in JMX with the 
usual DefaultContext MBean name, and tweak a little.

* HTML host manager servlet (allows easily creating host and 
preconfiguring them - ex: with the manager webapp installed, and a 
default context file). I think this would be useful (?).

* The other features I mentioned earlier: startup time optimization, 
removal of stuff which isn't used (such as container listeners).

Note: I'll initially commit some of the updated deployer work as JDK 1.5 
sources, and I'll change back to JDK 1.4 sources a bit later. It's very 
easy to do (although it hurts: I'm getting used to typing for 
collections way too fast ;) ), and I'm using this opportunity to really 
play with the new JDK.
How will this compile for people using JDK1.4 - or gump ?

I think I'm nearing the point where I'll submit a release plan for this 
branch (let's say at the end of next week), since I don't see much more 
to add for now besides more tweaking.

Rémy

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress, more ideas and native connector benchmarks

2004-07-22 Thread Remy Maucherat
Shapira, Yoav wrote:
Hola,
 

* Redo naming resources configuration using setAllProperties rule to
make the XML less verbose.
Example:
Resource name=bean/MyBeanFactory auth=Container
  type=com.mycompany.MyBean
factory=org.apache.naming.factory.BeanFactory
  bar=23/
   

I personally really like this (and use setAllProperties extensively in
my own projects).  The only knock against this approach is that the
Servlet Spec uses the verbose param-name/param-value pairs all over
the place, and being a servlet container we may wish to stick to the
same spirit.
 

Yes. It's not as important IMO, since a data source will require a large 
amount of parameters (= very verbose).

Looking forward to it.  

What is the status of Logger removal/rewriting/rethinking?
 

The Logger interface is now removed.
Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress, more ideas and native connector benchmarks

2004-07-22 Thread Remy Maucherat
Costin Manolache wrote:
Quick question - did you had any discussion on class loaders for 5.next?
It's one area I'm playing with, I want to make sure I'm not going in 
oposite direction :-)

I'll tweak the StandardCL to do a bit the same as the WebappCL (ie, try 
to make it faster). I'll also remove the anti locking hacks which are in 
WebappCL.

BTW - another feature idea would be to extend the JMX configuration 
into the webapps, i.e. allow jmx apps to view and configure context 
and servlet params, and support servlets implementing MBean 
interfaces. The init(ServletConfig) model is pretty archaic :-)

You're touching the application layer here. I'm not really in favor of 
allowing proprietary stuff in that area (Tomcat has been pretty strict 
about that in the past, with very few features being added). The init 
model is indeed archaic (I think it's a good cadidate for being replaced 
with dependency injection in the next spec, but we're not there yet) ;)
The Context and Wrapper are both modeled: I don't see why an app 
couldn't access with JMX that if it wants to.

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress, more ideas and native connector benchmarks

2004-07-22 Thread Costin Manolache
Remy Maucherat wrote:
Costin Manolache wrote:
Quick question - did you had any discussion on class loaders for 5.next?
It's one area I'm playing with, I want to make sure I'm not going in 
oposite direction :-)

I'll tweak the StandardCL to do a bit the same as the WebappCL (ie, try 
to make it faster). I'll also remove the anti locking hacks which are in 
WebappCL.
Ok. I'm experimenting with having tomcat use other class loaders ( for 
example if embedded in another app, or used with a different runtime - 
like eclipse OSGI  ).



BTW - another feature idea would be to extend the JMX configuration 
into the webapps, i.e. allow jmx apps to view and configure context 
and servlet params, and support servlets implementing MBean 
interfaces. The init(ServletConfig) model is pretty archaic :-)

You're touching the application layer here. I'm not really in favor of 
allowing proprietary stuff in that area (Tomcat has been pretty strict 
about that in the past, with very few features being added). The init 
model is indeed archaic (I think it's a good cadidate for being replaced 
with dependency injection in the next spec, but we're not there yet) ;)
The Context and Wrapper are both modeled: I don't see why an app 
couldn't access with JMX that if it wants to.
JMX is not proprietary :-)
Don't know what dependency injection is, but I hope the next spec 
won't invent yet another way to do configuration.

The context and wrapper have associated JMX mbeans, and that's nice - 
but they only work on the 'envelope', they provide some measurements and 
 configurability for the wrapper, without any interaction with the 
servlet itself.

What I'm intereseted is how can a servlet implement MBean ( again, there 
is nothing in the servlet spec preventing a servlet to implement another 
standard interface ), and how can it register itself. And then how 
tomcat ( or some jmx module ) could interact with this.

Costin

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: re: [5.next] progress, more ideas and native connector benchmarks

2004-07-22 Thread CDZone
THIS IS AN AUTOMATED RESPONSE FROM CDZONE

Thank you for contacting us.

If your enquiry is covered by the list below please visit
our web site at http://www.cdzone.co.uk/accounts where you can:

  * Check your order status - we are unable to provide any more
detailed information about delivery times than that shown on
your order status page
  * Obtain your password to access our site
  * Report shipments lost or damaged in the post
  * Report items faulty or sent in error
  * Add or change your email address
  * Change your delivery address
  * Change your payment details

If your query is not covered by the above please write back to us including
the tracking number 7D9CAFFEC89F78CB11C1032AB212D2C4 in the
subject of your message to avoid receiving this message again. Please don't
request tracklists, sleeve scans, etc. If we have the information it will be on
the web site. If your request is covered by the above listed items we will be
unable to assist you personally - please use the web site.

The top 20 lines of your message were:

 Remy Maucherat wrote:
 
  Costin Manolache wrote:
  
  Quick question - did you had any discussion on class loaders for 5.next?
  It's one area I'm playing with, I want to make sure I'm not going in 
  oposite direction :-)
 
  I'll tweak the StandardCL to do a bit the same as the WebappCL (ie, try 
  to make it faster). I'll also remove the anti locking hacks which are in 
  WebappCL.
 
 Ok. I'm experimenting with having tomcat use other class loaders ( for 
 example if embedded in another app, or used with a different runtime - 
 like eclipse OSGI  ).
 
 
  
  BTW - another feature idea would be to extend the JMX configuration 
  into the webapps, i.e. allow jmx apps to view and configure context 



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [5.next] Progress, more ideas and native connector benchmarks

2004-07-22 Thread Remy Maucherat
Costin Manolache wrote:
Remy Maucherat wrote:
Costin Manolache wrote:
Quick question - did you had any discussion on class loaders for 
5.next?
It's one area I'm playing with, I want to make sure I'm not going in 
oposite direction :-)

I'll tweak the StandardCL to do a bit the same as the WebappCL (ie, 
try to make it faster). I'll also remove the anti locking hacks which 
are in WebappCL.
Ok. I'm experimenting with having tomcat use other class loaders ( for 
example if embedded in another app, or used with a different runtime - 
like eclipse OSGI  ).

In JBoss, the default is to use the JBoss loader. Is there any big 
difference ?



BTW - another feature idea would be to extend the JMX configuration 
into the webapps, i.e. allow jmx apps to view and configure context 
and servlet params, and support servlets implementing MBean 
interfaces. The init(ServletConfig) model is pretty archaic :-)

You're touching the application layer here. I'm not really in favor 
of allowing proprietary stuff in that area (Tomcat has been pretty 
strict about that in the past, with very few features being added). 
The init model is indeed archaic (I think it's a good cadidate for 
being replaced with dependency injection in the next spec, but we're 
not there yet) ;)
The Context and Wrapper are both modeled: I don't see why an app 
couldn't access with JMX that if it wants to.

JMX is not proprietary :-)
Yes, but allowing to configure webapps in Tomcat using it is ;)
Don't know what dependency injection is, but I hope the next spec 
won't invent yet another way to do configuration.

Sorry for using hype words. I got contaminated, it can happen to anyone. 
I'll try to shake it off now. I apologise to the community for that, and 
I won't do it again (hopefully) ;)

The context and wrapper have associated JMX mbeans, and that's nice - 
but they only work on the 'envelope', they provide some measurements 
and  configurability for the wrapper, without any interaction with the 
servlet itself.

What I'm intereseted is how can a servlet implement MBean ( again, 
there is nothing in the servlet spec preventing a servlet to implement 
another standard interface ), and how can it register itself. And then 
how tomcat ( or some jmx module ) could interact with this.
Ah, ok. Well, I don't have that or anything related on my list, so 
there's no conflict ;)

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


RE: [5.next] Progress

2004-07-17 Thread Filip Hanik \(lists\)
hi Remy,
Time will open up in a week or so. And yes, I am wide open to any ideas.
My personal feeling about the farm deployer, is that it would work exactly
like auto deployment to Tomcat, and maybe just an entry in web.xml makes it
send to other servers.
I do need a temp directory to store the fragments of data sent across the
wire, so that we don't take up too much RAM.

Let me put together a todo list for review next week!

Filip

-Original Message-
From: Remy Maucherat [mailto:[EMAIL PROTECTED]
Sent: Thursday, July 15, 2004 12:11 PM
To: Tomcat Developers List
Subject: Re: [5.next] Progress


My updated TODO. So I'll do the deployer next, followed by trying to
optimize startup time.
Then, there's tweaking.

Filip, do you have time to refactor the clustering soon ? I think we
should tweak your farming feature as well, as it should likely be done
the way the manager servlet is (rather, will be) doing its stuff. The
idea is to have only one big entry point for deployments, rather than
have 20 different components calling various deploy methods (which is
impossible to maintain). I need to write some code and experiment, and
then I'll have a clearer view of what this refactoring will look like
(sorry, it's just a little too messy right now for me to enumerate the
list of changes).

- Attempt to redo a bit the deployer:
   * remove the CL code which is there to avoid JAR locking (or at least
allow disabling this feature for non-Windows OSes); when enabling anti
locking
code, move everything to a temp deploy folder where everything will be
referenced from; controlled by a development flag on the Context to allow
disabling this on Windows
   * move processing of context.xml to StandardContext (at the expense of
being able to specify the context class, which will move to an attribute
on the Host), as I realize it is important to get context level
configurability without adding too much complexity in the embedding
application; this could also go in ContextConfig, but this should be done in
another event (START occurs too late)
- Use the webapp CL as the main CL (without the locking tricks it is likely
faster than the regular CL)
- Resolve DBCP - Pool - Collections dependency, using package renaming
- Remove anything useless (spring cleaning time), such as configuration
options, container listeners (to be replaced with JMX notifications where
it matters), etc
- clutering module refactoring, to extend the regular Catalina objects, for
easier future maintenance
- Possibly require JDK 1.5 (cleaner code, annotations, integrated JMX
and JMX
remote, etc)
- Externalize configuration saving out of StandardServer
- And the ongoing: allow all config/management through JMX (actually, we
could consider going to a JMX config format)

Rémy


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.713 / Virus Database: 469 - Release Date: 6/30/2004

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.721 / Virus Database: 477 - Release Date: 7/16/2004


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [5.next] Progress

2004-07-17 Thread Remy Maucherat
Filip Hanik (lists) wrote:
hi Remy,
Time will open up in a week or so. And yes, I am wide open to any ideas.
My personal feeling about the farm deployer, is that it would work exactly
like auto deployment to Tomcat, and maybe just an entry in web.xml makes it
send to other servers.
Yes for the first part. I think it's misleading to call that the 
autodeployer, though, as that component will become the deployer (the 
deployment code is spread and duplicated right now, so the spaghetti 
needs to go).

For the second part, I don't understand. This seems to hint at the 
existence of a master node, which would be bad, no ?

I do need a temp directory to store the fragments of data sent across the
wire, so that we don't take up too much RAM.
I don't get that sent data thing, but you can use either the workdir or 
the tempdir (as usual).

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


RE: [5.next] Progress

2004-07-17 Thread Filip Hanik \(lists\)
This is how it works currently.
There is a listen directory. If you deploy an app to any of the nodes on
the cluster, into the listen directory,
it will deploy that app to the other nodes in the cluster. It deploys it
into a deployed dir, if an app is removed from that dir, a message is
broadcasted to the other nodes to undeploy the app.
So it could work the same way, but use the tomcat dirs instead of new ones.
And yes, the work dir is the place to store the file fragments.
cheerios
Filip

-Original Message-
From: Remy Maucherat [mailto:[EMAIL PROTECTED]
Sent: Saturday, July 17, 2004 1:05 PM
To: Tomcat Developers List
Subject: Re: [5.next] Progress


Filip Hanik (lists) wrote:
 hi Remy,
 Time will open up in a week or so. And yes, I am wide open to any ideas.
 My personal feeling about the farm deployer, is that it would work exactly
 like auto deployment to Tomcat, and maybe just an entry in web.xml makes
it
 send to other servers.

Yes for the first part. I think it's misleading to call that the
autodeployer, though, as that component will become the deployer (the
deployment code is spread and duplicated right now, so the spaghetti
needs to go).

For the second part, I don't understand. This seems to hint at the
existence of a master node, which would be bad, no ?

 I do need a temp directory to store the fragments of data sent across the
 wire, so that we don't take up too much RAM.

I don't get that sent data thing, but you can use either the workdir or
the tempdir (as usual).

Rémy


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.721 / Virus Database: 477 - Release Date: 7/16/2004

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.721 / Virus Database: 477 - Release Date: 7/16/2004


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [5.next] Progress

2004-07-16 Thread Endre Stølsvik
On Thu, 15 Jul 2004, Remy Maucherat wrote:

| Jess Holle wrote:
|  Just a note:
| 
|  Please allow the anti-locking stuff to be skipped on Windows as well.
|  [Some of us value performance over deployment convenience.]
|
| Yes, of course. In production, many people don't use hot deployment (it
| doesn't give good enough QoS right now, IMO).
|
|  - Possibly require JDK 1.5 (cleaner code, annotations, integrated JMX
|  and JMX
|  remote, etc)
| 
|  It would be good to get many of the changes listed above this last point
|  available in 5.0.x and usable with JDK 1.4.2 and then branch to 5.1 and
|  do 1.5-specific goodies.
|
| No for 5.0.x, as nearly everything in my list requires API breakage :(
| For now, I don't have any JDK 1.5 features in mind: this item is there
| just in case.

In my opinion, it is very bad to require the -latest- JDK there is for
such low-level software-stack-components as the Servlet Container is.
I mean, the 1.5 (5.0) isn't even released!
  There should at least be a couple of viable JDKs of a particular
version, before you intend to depend Tomcat on it (e.g. when IBM, SUN,
JRockit and a couple of others (!) have a J2SDK 5.0-version out, you might
consider it). Any depedencies on 1.5 should -most definately- be done
using introspection or configurable 1.5 classes that you can add if you
want.

IMHO, I think you should make Tomcat run perfectly, and actually develop
it, on 1.3.

Endre

PS: What an IDIOTIC versioning scheme Sun is using!! What on earth is the
idea with Java -2-, and then upping the minor-versioning to -5-??
Java 2 version 5.0.. WHAT???
  It actually pisses me off - can't we just say Java 5, then?


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [5.next] Progress

2004-07-15 Thread Remy Maucherat
My updated TODO. So I'll do the deployer next, followed by trying to 
optimize startup time.
Then, there's tweaking.

Filip, do you have time to refactor the clustering soon ? I think we 
should tweak your farming feature as well, as it should likely be done 
the way the manager servlet is (rather, will be) doing its stuff. The 
idea is to have only one big entry point for deployments, rather than 
have 20 different components calling various deploy methods (which is 
impossible to maintain). I need to write some code and experiment, and 
then I'll have a clearer view of what this refactoring will look like 
(sorry, it's just a little too messy right now for me to enumerate the 
list of changes).

- Attempt to redo a bit the deployer:
  * remove the CL code which is there to avoid JAR locking (or at least
allow disabling this feature for non-Windows OSes); when enabling anti 
locking
code, move everything to a temp deploy folder where everything will be
referenced from; controlled by a development flag on the Context to allow
disabling this on Windows
  * move processing of context.xml to StandardContext (at the expense of
being able to specify the context class, which will move to an attribute
on the Host), as I realize it is important to get context level
configurability without adding too much complexity in the embedding
application; this could also go in ContextConfig, but this should be done in
another event (START occurs too late)
- Use the webapp CL as the main CL (without the locking tricks it is likely
faster than the regular CL)
- Resolve DBCP - Pool - Collections dependency, using package renaming
- Remove anything useless (spring cleaning time), such as configuration
options, container listeners (to be replaced with JMX notifications where
it matters), etc
- clutering module refactoring, to extend the regular Catalina objects, for
easier future maintenance
- Possibly require JDK 1.5 (cleaner code, annotations, integrated JMX 
and JMX
remote, etc)
- Externalize configuration saving out of StandardServer
- And the ongoing: allow all config/management through JMX (actually, we
could consider going to a JMX config format)

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-07-15 Thread Jess Holle
Remy Maucherat wrote:
My updated TODO. So I'll do the deployer next, followed by trying to 
optimize startup time.
Then, there's tweaking.

Filip, do you have time to refactor the clustering soon ? I think we 
should tweak your farming feature as well, as it should likely be done 
the way the manager servlet is (rather, will be) doing its stuff. The 
idea is to have only one big entry point for deployments, rather than 
have 20 different components calling various deploy methods (which is 
impossible to maintain). I need to write some code and experiment, and 
then I'll have a clearer view of what this refactoring will look like 
(sorry, it's just a little too messy right now for me to enumerate the 
list of changes).

- Attempt to redo a bit the deployer:
  * remove the CL code which is there to avoid JAR locking (or at least
allow disabling this feature for non-Windows OSes); when enabling anti 
locking
code, move everything to a temp deploy folder where everything will be
referenced from; controlled by a development flag on the Context to 
allow
disabling this on Windows
Just a note:
Please allow the anti-locking stuff to be skipped on Windows as well.  
[Some of us value performance over deployment convenience.]

  * move processing of context.xml to StandardContext (at the expense of
being able to specify the context class, which will move to an attribute
on the Host), as I realize it is important to get context level
configurability without adding too much complexity in the embedding
application; this could also go in ContextConfig, but this should be 
done in
another event (START occurs too late)
- Use the webapp CL as the main CL (without the locking tricks it is 
likely
faster than the regular CL)
- Resolve DBCP - Pool - Collections dependency, using package renaming
- Remove anything useless (spring cleaning time), such as configuration
options, container listeners (to be replaced with JMX notifications where
it matters), etc
- clutering module refactoring, to extend the regular Catalina 
objects, for
easier future maintenance

- Possibly require JDK 1.5 (cleaner code, annotations, integrated JMX 
and JMX
remote, etc)
It would be good to get many of the changes listed above this last point 
available in 5.0.x and usable with JDK 1.4.2 and then branch to 5.1 and 
do 1.5-specific goodies.

- Externalize configuration saving out of StandardServer
- And the ongoing: allow all config/management through JMX (actually, we
could consider going to a JMX config format)
--
Jess Holle
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-07-15 Thread Remy Maucherat
Jess Holle wrote:
Just a note:
Please allow the anti-locking stuff to be skipped on Windows as well.  
[Some of us value performance over deployment convenience.]
Yes, of course. In production, many people don't use hot deployment (it 
doesn't give good enough QoS right now, IMO).

- Possibly require JDK 1.5 (cleaner code, annotations, integrated JMX 
and JMX
remote, etc)
It would be good to get many of the changes listed above this last point 
available in 5.0.x and usable with JDK 1.4.2 and then branch to 5.1 and 
do 1.5-specific goodies.
No for 5.0.x, as nearly everything in my list requires API breakage :(
For now, I don't have any JDK 1.5 features in mind: this item is there 
just in case.

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-07-15 Thread Jess Holle
Remy Maucherat wrote:
Jess Holle wrote:
Just a note:
Please allow the anti-locking stuff to be skipped on Windows as 
well.  [Some of us value performance over deployment convenience.]

Yes, of course. In production, many people don't use hot deployment 
(it doesn't give good enough QoS right now, IMO).

- Possibly require JDK 1.5 (cleaner code, annotations, integrated 
JMX and JMX
remote, etc)

It would be good to get many of the changes listed above this last 
point available in 5.0.x and usable with JDK 1.4.2 and then branch to 
5.1 and do 1.5-specific goodies.

No for 5.0.x, as nearly everything in my list requires API breakage :(
That includes the anti-locking stuff?  That's unfortunate as I was 
hoping to see that in 5.0.x

Oh well.
--
Jess Holle
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-07-07 Thread Jess Holle
Remy Maucherat wrote:
Jess Holle wrote:
Though I also really like Java 5's [yep, another neat numbering 
change from Sun :-)] built-MBeans for JVM monitoring, I'd *really* 
like to see a JSR 160 solution in Tomcat that works in Java 1.4.x and 
Java 1.5 (aka 5).

Is this the plan/hope?  At a high level it does not look too nasty to 
do this

Unfortunately, I'm against useless code in this branch. JSR 160 being 
brand new, you're going to need new software pretty much everywhere, 
but of course upgrading the JDK is not an option. Given the new branch 
changes the API rather significantly, I think it's not going to be a 
release people will be upgrading to.

If it still doesn't make sense, then you can probably manage to cut  
paste a few lines of code from the JMX docs, right ? ;) sin
I'll play with this as I have time, but I'll be doing the same sort of 
thing with our own app first.

As I see it (and I could be offbase, of course, as I've not had time to 
code this), one just needs a pluggable SPI sort of interface responsible 
for:

  1. A singleton get-or-create MBeanServer method
 * Default to platform MBeanServer in 1.5, but allow use of
   mx4j or the like
  2. An export MBeanServer for remote ops method
 * Details, e.g. protocols, ports / port ranges, etc, to be
   controlled by XML tags, of course
Am I over-simplifying this?
--
Jess Holle


Re: [5.next] Progress

2004-07-07 Thread Remy Maucherat
Jess Holle wrote:
I'll play with this as I have time, but I'll be doing the same sort of 
thing with our own app first.

As I see it (and I could be offbase, of course, as I've not had time to 
code this), one just needs a pluggable SPI sort of interface responsible 
for:

  1. A singleton get-or-create MBeanServer method
 * Default to platform MBeanServer in 1.5, but allow use of
   mx4j or the like
  2. An export MBeanServer for remote ops method
 * Details, e.g. protocols, ports / port ranges, etc, to be
   controlled by XML tags, of course
Am I over-simplifying this?
It's the exact opposite. With JDK 1.5, we need no pluggable something, 
no nothing. So this is why I really want to do that instead of bothering 
with more dead code.

I'm ok with a special JDK 1.4 package full of optional components 
being put together (assuming none of the new syntax gets used, of 
course), which could contain your listener and other JARs (like Xerces).

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-07-07 Thread Remy Maucherat
Jess Holle wrote:
Though I also really like Java 5's [yep, another neat numbering change 
from Sun :-)] built-MBeans for JVM monitoring, I'd *really* like to see 
a JSR 160 solution in Tomcat that works in Java 1.4.x and Java 1.5 (aka 5).

Is this the plan/hope?  At a high level it does not look too nasty to do 
this
Unfortunately, I'm against useless code in this branch. JSR 160 being 
brand new, you're going to need new software pretty much everywhere, but 
of course upgrading the JDK is not an option. Given the new branch 
changes the API rather significantly, I think it's not going to be a 
release people will be upgrading to.

If it still doesn't make sense, then you can probably manage to cut  
paste a few lines of code from the JMX docs, right ? ;)

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-07-07 Thread Jess Holle
Remy Maucherat wrote:
Jess Holle wrote:
I'll play with this as I have time, but I'll be doing the same sort 
of thing with our own app first.

As I see it (and I could be offbase, of course, as I've not had time 
to code this), one just needs a pluggable SPI sort of interface 
responsible for:

  1. A singleton get-or-create MBeanServer method
 * Default to platform MBeanServer in 1.5, but allow use of
   mx4j or the like
  2. An export MBeanServer for remote ops method
 * Details, e.g. protocols, ports / port ranges, etc, to be
   controlled by XML tags, of course
Am I over-simplifying this?

It's the exact opposite. With JDK 1.5, we need no pluggable something, 
no nothing. So this is why I really want to do that instead of 
bothering with more dead code.
In my case even with 1.5 I need a pluggable (2) from above.  Why?  
Because I need to work with port ranges and grab the first free port 
(with MBeans then proxied to a daemon with a consistent port #).  1.5 
has no automatic machinery for this as best I can tell.

It's true that (1) is simple getPlatformMbeanServer() [or whatever it is 
called again] in 1.5, but I believe it should be light and easy enough 
to stick something else under the covers here.

I'm ok with a special JDK 1.4 package full of optional components 
being put together (assuming none of the new syntax gets used, of 
course), which could contain your listener and other JARs (like Xerces).
Cool.  As I said though, I've got my own processes to instrument first.  
I'd just like to see Tomcat progress in a similar fashion so that one 
monitor Tomcat in the same fashion sooner rather than later.

--
Jess Holle
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-07-07 Thread Remy Maucherat
Jess Holle wrote:
In my case even with 1.5 I need a pluggable (2) from above.  Why?  
Because I need to work with port ranges and grab the first free port 
(with MBeans then proxied to a daemon with a consistent port #).  1.5 
has no automatic machinery for this as best I can tell.

It's true that (1) is simple getPlatformMbeanServer() [or whatever it is 
called again] in 1.5, but I believe it should be light and easy enough 
to stick something else under the covers here.
I'm tired of interfaces, so I have to say I'm against this, especially 
for a specific purpose (I would tend to believe you can configure lots 
of stuff with JDK 1.5, though). You should simply use your own server 
listener (I think server lifecycle listeners are here to stay).

Cool.  As I said though, I've got my own processes to instrument first.  
I'd just like to see Tomcat progress in a similar fashion so that one 
monitor Tomcat in the same fashion sooner rather than later.
Regardless on how the JMX connector is configured on the server side, it 
will work the same from the client's perspective.

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-07-07 Thread Jess Holle
Remy Maucherat wrote:
Jess Holle wrote:
In my case even with 1.5 I need a pluggable (2) from above.  Why?  
Because I need to work with port ranges and grab the first free port 
(with MBeans then proxied to a daemon with a consistent port #).  1.5 
has no automatic machinery for this as best I can tell.

It's true that (1) is simple getPlatformMbeanServer() [or whatever it 
is called again] in 1.5, but I believe it should be light and easy 
enough to stick something else under the covers here.
I'm tired of interfaces, so I have to say I'm against this, especially 
for a specific purpose (I would tend to believe you can configure lots 
of stuff with JDK 1.5, though). You should simply use your own server 
listener (I think server lifecycle listeners are here to stay).

Cool.  As I said though, I've got my own processes to instrument 
first.  I'd just like to see Tomcat progress in a similar fashion so 
that one monitor Tomcat in the same fashion sooner rather than later.
Regardless on how the JMX connector is configured on the server side, 
it will work the same from the client's perspective.
Yep.  I'm just anxious to see JMX RMI remoting support in Tomcat soon, 
i.e. in a stable shipping version that supports a stable, shipping JRE 
(i.e. 1.4.2).

--
Jess Holle
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-07-07 Thread Peter Rossbach
Hello Jess,
I have made a test with MX4J 2.0.1 and JSR 160 Connector.
See my patches
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=29259
Testet with MC4J Console and works very well.
regards
Peter
Jess Holle schrieb:
Remy Maucherat wrote:
Jess Holle wrote:
In my case even with 1.5 I need a pluggable (2) from above.  Why?  
Because I need to work with port ranges and grab the first free port 
(with MBeans then proxied to a daemon with a consistent port #).  
1.5 has no automatic machinery for this as best I can tell.

It's true that (1) is simple getPlatformMbeanServer() [or whatever 
it is called again] in 1.5, but I believe it should be light and 
easy enough to stick something else under the covers here.

I'm tired of interfaces, so I have to say I'm against this, 
especially for a specific purpose (I would tend to believe you can 
configure lots of stuff with JDK 1.5, though). You should simply use 
your own server listener (I think server lifecycle listeners are here 
to stay).

Cool.  As I said though, I've got my own processes to instrument 
first.  I'd just like to see Tomcat progress in a similar fashion so 
that one monitor Tomcat in the same fashion sooner rather than later.

Regardless on how the JMX connector is configured on the server side, 
it will work the same from the client's perspective.

Yep.  I'm just anxious to see JMX RMI remoting support in Tomcat soon, 
i.e. in a stable shipping version that supports a stable, shipping JRE 
(i.e. 1.4.2).

--
Jess Holle
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


--
J2EE Systemarchitekt und Tomcat Experte
http://objektpark.de/
http://www.webapp.de/
Am Josephsschacht 72, 44879 Bochum, Deutschland
Telefon:  (49) 234 9413228
Mobil:(49) 175 1660884
E-Mail:  [EMAIL PROTECTED]

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-07-06 Thread Jess Holle

- Possibly require JDK 1.5 (cleaner code, annotations, integrated 
JMX and JMX
remote, etc)
I have made prototype for mx4J JSR 160 support it looks very nice.
Can't we refactor the ServerLifecycleListener also?
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=29259
No, that listener needs to go IMO. This listener is useless in the end 
(for this branch): this is done at the VM level much more cleanly, and 
the VM also provides tons of runtime statistics that nobody will want 
to live without. I'll rethink my position if J2SE 5 (I'm learning ;) ) 
turns out bad somehow, but I don't think the core VM is a big rewrite, 
so I expect it to be stable. I'll start using it soon for my builds 
and testing, and I'll see how it goes.
Though I also really like Java 5's [yep, another neat numbering change 
from Sun :-)] built-MBeans for JVM monitoring, I'd *really* like to see 
a JSR 160 solution in Tomcat that works in Java 1.4.x and Java 1.5 (aka 5).

Is this the plan/hope?  At a high level it does not look too nasty to do 
this

--
Jess Holle
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-07-02 Thread Remy Maucherat
Jeanfrancois Arcand wrote:
Remy Maucherat wrote:
Remy Maucherat wrote:
My upcoming change list:
- Attempt to redo a bit the deployer:
  * remove the CL code which is there to avoid JAR locking (or at least
allow disabling this feature for non-Windows OSes); when enabling 
anti locking
code, move everything to a temp deploy folder where everything will be
referenced from; controlled by a development flag on the Context to 
allow
disabling this on Windows
Speaking of which, does anyone know any OSes (besides Windows) which 
lock files ?
NFS sometimes lock file (I did see a similar problem with Solaris)
Thanks for the tip. I'll code in Windows by default, and add a flag to 
enable/disable then, since I don't think there's a way to determine if 
something is coming from NFS.

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-07-02 Thread David Rees
Remy Maucherat wrote, On 7/2/2004 2:13 AM:
Jeanfrancois Arcand wrote:
Remy Maucherat wrote:
Speaking of which, does anyone know any OSes (besides Windows) which 
lock files ?
NFS sometimes lock file (I did see a similar problem with Solaris)
Thanks for the tip. I'll code in Windows by default, and add a flag to 
enable/disable then, since I don't think there's a way to determine if 
something is coming from NFS.
Although you can lock files over NFS on Unix systems, it should behave 
no differently than if you were to lock the file on any other 
filesystem.  In other words, unless you explicitly lock the file and 
check that the file is locked (as locks are only advisory on Unix, they 
don't stop you from performing any operations if you really want to) you 
should not have any of the same file locking issues on Unix that you do 
on Windows.  See the the flock and fcntl man pages for more information 
on Unix file locking.

-Dave
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-07-01 Thread Jeanfrancois Arcand

Remy Maucherat wrote:
Remy Maucherat wrote:
My upcoming change list:
- Attempt to redo a bit the deployer:
  * remove the CL code which is there to avoid JAR locking (or at least
allow disabling this feature for non-Windows OSes); when enabling 
anti locking
code, move everything to a temp deploy folder where everything will be
referenced from; controlled by a development flag on the Context to 
allow
disabling this on Windows

Speaking of which, does anyone know any OSes (besides Windows) which 
lock files ?

NFS sometimes lock file (I did see a similar problem with Solaris)
-- Jeanfrancois
Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-06-30 Thread Peter Rossbach
Hello,
I have start a Server saved implementation.
- Externalize configuration saving out of StandardServer
features:
*   splitt implementation from StandardServer class
*   refactor the current save methods to some helper classes
*   every save element from server.xml dialect has it own save factory
*   central Mbean that have a registry for save factories
*   save complete Server,Engine,Host or Context xml's
*   support cluster elements
*   implement with testcases
options:
*  configure the save factories from xml or properties files.
*  better backup handling / not only for server.xml, also for 
context.xmls :-)

I hope the first implementation is ready at this weekend.
==
see some comments directly at the 5.next topics.
regards
peter
Remy Maucherat schrieb:
My upcoming change list:
- Attempt to redo a bit the deployer:
  * remove the CL code which is there to avoid JAR locking (or at least
allow disabling this feature for non-Windows OSes); when enabling anti 
locking
code, move everything to a temp deploy folder where everything will be
referenced from; controlled by a development flag on the Context to 
allow
disabling this on Windows
Good option.
  * move processing of context.xml to StandardContext (at the expense of
being able to specify the context class, which will move to an attribute
on the Host), as I realize it is important to get context level
configurability without adding too much complexity in the embedding
application; this could also go in ContextConfig, but this should be 
done in
another event (START occurs too late)
see some change requests at my today proposal... HostConfig/Deployer
- Use the webapp CL as the main CL (without the locking tricks it is 
likely
faster than the regular CL)
- Default servlet refactoring and optimization (avoid ResourceInfo 
class, MIME mapping matching)
- Resolve DBCP - Pool - Collections dependency which exposes too 
many JARs in the common classloader (using package renaming and some 
repackaging)
- Externalize configuration saving out of StandardServer
I can do that.

- Remove anything useless (spring cleaning time), such as configuration
options, container listeners (to be replaced with JMX notifications where
it matters), etc
Very good.
I have a made a NotificationEmitter Inteface support for StandardContext 
an StandardWrapper,
but it exist some problems at current JSR 77 notification support. 
Please look at my proposal or the bugreport

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=29869
- BASIC auth optimization
- clutering module refactoring, to extend the regular Catalina 
objects, for
easier future maintenance
I have a talk with Rainer Jung, and his changes to cluster 
implementation looks very good.

- Possibly require JDK 1.5 (cleaner code, annotations, integrated JMX 
and JMX
remote, etc)
I have made prototype for mx4J JSR 160 support it looks very nice.
Can't we refactor the ServerLifecycleListener also?
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=29259
- And the ongoing: allow all config/management/embedding through JMX; 
note: I think this is almost there already (thanks Costin), so only a 
little tweaking will likely be needed

YES!
So there are still a number of big changes waiting to be implemented, 
and these should have a bigger impact than my initial changes. I'll do 
the deployer and classloader changes first, which is the biggest chunk.

When I'm done with the remove anything useless item, I'll propose a 
release plan. Any items to the list (anyone proposing something must 
be willing to timely implement what he's proposing, I'm not running a 
wish list ;) ) ?

Rémy


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-06-30 Thread Remy Maucherat
Peter Rossbach wrote:
Hello,
I have start a Server saved implementation.
- Externalize configuration saving out of StandardServer
features:
*   splitt implementation from StandardServer class
*   refactor the current save methods to some helper classes
*   every save element from server.xml dialect has it own save factory
*   central Mbean that have a registry for save factories
*   save complete Server,Engine,Host or Context xml's
*   support cluster elements
*   implement with testcases
options:
*  configure the save factories from xml or properties files.
*  better backup handling / not only for server.xml, also for 
context.xmls :-)

I hope the first implementation is ready at this weekend.
Sure, show me the code.
see some comments directly at the 5.next topics.
Remy Maucherat schrieb:
My upcoming change list:
- Attempt to redo a bit the deployer:
  * remove the CL code which is there to avoid JAR locking (or at least
allow disabling this feature for non-Windows OSes); when enabling anti 
locking
code, move everything to a temp deploy folder where everything will be
referenced from; controlled by a development flag on the Context to 
allow
disabling this on Windows
Good option.
I'm so tired of Windows right now ...
- Externalize configuration saving out of StandardServer
I can do that.
I was planning to do it in 5 minutes (take the current code, put it in 
separate class, )

- BASIC auth optimization
- clutering module refactoring, to extend the regular Catalina 
objects, for
easier future maintenance
I have a talk with Rainer Jung, and his changes to cluster 
implementation looks very good.
Ah ok. Filip was planning (to be forced through any means necessary) to 
do that, so ask him.

- Possibly require JDK 1.5 (cleaner code, annotations, integrated JMX 
and JMX
remote, etc)
I have made prototype for mx4J JSR 160 support it looks very nice.
Can't we refactor the ServerLifecycleListener also?
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=29259
No, that listener needs to go IMO. This listener is useless in the end 
(for this branch): this is done at the VM level much more cleanly, and 
the VM also provides tons of runtime statistics that nobody will want to 
live without. I'll rethink my position if J2SE 5 (I'm learning ;) ) 
turns out bad somehow, but I don't think the core VM is a big rewrite, 
so I expect it to be stable. I'll start using it soon for my builds and 
testing, and I'll see how it goes.

- And the ongoing: allow all config/management/embedding through JMX; 
note: I think this is almost there already (thanks Costin), so only a 
little tweaking will likely be needed
YES!
Lol.
Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-06-30 Thread Filip Hanik - Dev
Ah ok. Filip was planning (to be forced through any means necessary) to
do that, so ask him.

yup, still planning on doing so :) just a little slammed with paying work at the moment

Filip

- Original Message -
From: Remy Maucherat [EMAIL PROTECTED]
To: Tomcat Developers List [EMAIL PROTECTED]
Sent: Wednesday, June 30, 2004 8:47 AM
Subject: Re: [5.next] Progress


 Peter Rossbach wrote:

  Hello,
 
  I have start a Server saved implementation.
 
  - Externalize configuration saving out of StandardServer
 
  features:
 
  *   splitt implementation from StandardServer class
  *   refactor the current save methods to some helper classes
  *   every save element from server.xml dialect has it own save factory
  *   central Mbean that have a registry for save factories
  *   save complete Server,Engine,Host or Context xml's
  *   support cluster elements
  *   implement with testcases
 
  options:
  *  configure the save factories from xml or properties files.
  *  better backup handling / not only for server.xml, also for
  context.xmls :-)
 
  I hope the first implementation is ready at this weekend.

 Sure, show me the code.

  see some comments directly at the 5.next topics.
 
  Remy Maucherat schrieb:
 
  My upcoming change list:
  - Attempt to redo a bit the deployer:
* remove the CL code which is there to avoid JAR locking (or at least
  allow disabling this feature for non-Windows OSes); when enabling anti
  locking
  code, move everything to a temp deploy folder where everything will be
  referenced from; controlled by a development flag on the Context to
  allow
  disabling this on Windows
 
  Good option.

 I'm so tired of Windows right now ...

  - Externalize configuration saving out of StandardServer
 
  I can do that.

 I was planning to do it in 5 minutes (take the current code, put it in
 separate class, )

  - BASIC auth optimization
  - clutering module refactoring, to extend the regular Catalina
  objects, for
  easier future maintenance
 
  I have a talk with Rainer Jung, and his changes to cluster
  implementation looks very good.

 Ah ok. Filip was planning (to be forced through any means necessary) to
 do that, so ask him.

  - Possibly require JDK 1.5 (cleaner code, annotations, integrated JMX
  and JMX
  remote, etc)
 
  I have made prototype for mx4J JSR 160 support it looks very nice.
  Can't we refactor the ServerLifecycleListener also?
  http://nagoya.apache.org/bugzilla/show_bug.cgi?id=29259

 No, that listener needs to go IMO. This listener is useless in the end
 (for this branch): this is done at the VM level much more cleanly, and
 the VM also provides tons of runtime statistics that nobody will want to
 live without. I'll rethink my position if J2SE 5 (I'm learning ;) )
 turns out bad somehow, but I don't think the core VM is a big rewrite,
 so I expect it to be stable. I'll start using it soon for my builds and
 testing, and I'll see how it goes.

  - And the ongoing: allow all config/management/embedding through JMX;
  note: I think this is almost there already (thanks Costin), so only a
  little tweaking will likely be needed
 
  YES!

 Lol.

 Rémy


 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [5.next] Progress

2004-06-30 Thread Peter Rossbach
Hey Remy,
OK, I am do my best that the save factory implementation work at weekend.
s. comments...
Regards
Peter
Remy Maucherat schrieb:
Peter Rossbach wrote:
Hello,
I have start a Server saved implementation.
- Externalize configuration saving out of StandardServer
features:
*   splitt implementation from StandardServer class
*   refactor the current save methods to some helper classes
*   every save element from server.xml dialect has it own save factory
*   central Mbean that have a registry for save factories
*   save complete Server,Engine,Host or Context xml's
*   support cluster elements
*   implement with testcases
options:
*  configure the save factories from xml or properties files.
*  better backup handling / not only for server.xml, also for 
context.xmls :-)

I hope the first implementation is ready at this weekend.

Sure, show me the code.
see some comments directly at the 5.next topics.
Remy Maucherat schrieb:
My upcoming change list:
- Attempt to redo a bit the deployer:
  * remove the CL code which is there to avoid JAR locking (or at least
allow disabling this feature for non-Windows OSes); when enabling 
anti locking
code, move everything to a temp deploy folder where everything 
will be
referenced from; controlled by a development flag on the Context 
to allow
disabling this on Windows

Good option.

I'm so tired of Windows right now ...
But few of the developers wan't work at linux  :-\  ...
- Externalize configuration saving out of StandardServer

I can do that.

I was planning to do it in 5 minutes (take the current code, put it in 
separate class, )

Ohh, that was also my first step, but after a deeper look: I  made a 
bigger redesign step to
support also cluster and I hope more modules in the future.

- BASIC auth optimization
- clutering module refactoring, to extend the regular Catalina 
objects, for
easier future maintenance

I have a talk with Rainer Jung, and his changes to cluster 
implementation looks very good.

Ah ok. Filip was planning (to be forced through any means necessary) 
to do that, so ask him.

- Possibly require JDK 1.5 (cleaner code, annotations, integrated 
JMX and JMX
remote, etc)

I have made prototype for mx4J JSR 160 support it looks very nice.
Can't we refactor the ServerLifecycleListener also?
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=29259

No, that listener needs to go IMO. This listener is useless in the end 
(for this branch): this is done at the VM level much more cleanly, and 
the VM also provides tons of runtime statistics that nobody will want 
to live without. I'll rethink my position if J2SE 5 (I'm learning ;) ) 
turns out bad somehow, but I don't think the core VM is a big rewrite, 
so I expect it to be stable. I'll start using it soon for my builds 
and testing, and I'll see how it goes.

OK, I thing also that a VM-JMX support are a better way.
- And the ongoing: allow all config/management/embedding through 
JMX; note: I think this is almost there already (thanks Costin), so 
only a little tweaking will likely be needed

YES!

Lol.
Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


--
J2EE Systemarchitekt und Tomcat Experte
http://objektpark.de/
http://www.webapp.de/
Am Josephsschacht 72, 44879 Bochum, Deutschland
Telefon:  (49) 234 9413228
Mobil:(49) 175 1660884
E-Mail:  [EMAIL PROTECTED]

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-06-30 Thread Remy Maucherat
Peter Rossbach wrote:
Hey Remy,
OK, I am do my best that the save factory implementation work at weekend.
A good patch is better than a rushed patch ;)
I'm so tired of Windows right now ...
But few of the developers wan't work at linux  :-\  ...
Yes, but the fact that M$ failed to address core issues in its OS for 
the years is simply not acceptable.

No, that listener needs to go IMO. This listener is useless in the end 
(for this branch): this is done at the VM level much more cleanly, and 
the VM also provides tons of runtime statistics that nobody will want 
to live without. I'll rethink my position if J2SE 5 (I'm learning ;) ) 
turns out bad somehow, but I don't think the core VM is a big rewrite, 
so I expect it to be stable. I'll start using it soon for my builds 
and testing, and I'll see how it goes.
OK, I thing also that a VM-JMX support are a better way.
Your tweaked listener could be useful in the 5.0.x branch, but never 
looked at it, so I don't know.

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [5.next] Progress

2004-06-30 Thread Remy Maucherat
Remy Maucherat wrote:
My upcoming change list:
- Attempt to redo a bit the deployer:
  * remove the CL code which is there to avoid JAR locking (or at least
allow disabling this feature for non-Windows OSes); when enabling anti 
locking
code, move everything to a temp deploy folder where everything will be
referenced from; controlled by a development flag on the Context to allow
disabling this on Windows
Speaking of which, does anyone know any OSes (besides Windows) which 
lock files ?

Rémy
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]