Below is my suggested alternative interface. It's simple by design, to make it easy to implement.
public interface Context {public String[] getPropertyNames() throws ContextException;
public Object get(String propertyName) throws ContextException;
public void set(String propertyName, Object propertyValue)
throws ContextException;
}I also am concerned that the ServletWebContext class exposes too much information that is specific to the presentation tier. Even if a business object were to depend only on the Context interface, if a ServletWebContext was passed in, the business object would be tied to HTTP symantics with calls such as context.get("sessionScope.myBean.myProperty"). I would recommend a context simliar to the one available to the JST: let request attributes be a scratchpad and let session and application items be visible so long as they aren't blocked by a lower level.
For full javadoc on my ideas behind contexts, please see the net.sf.morph.Context class and the net.sf.morph.context.* package. Also, take a look at net.sf.morph.context.ServletWebContext. Here's a link to the Morph homepage where you can access the Morph API:
http://www.crystalcognition.com/sgarlatm/morph
I'm not on SourceForge yet but I applied on Friday so hopefully I'll be there soon!
Matt
----- Original Message ----- From: "Martin Cooper" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Sunday, November 21, 2004 6:01 PM
Subject: [VOTE] Release Chain 1.0
I believe Chain is now sufficiently complete and stable to warrant an official 1.0 release. There are no outstanding bug reports, and the component is already in use in a number of projects.
The plan is to release HEAD as Commons Chain 1.0 on completion of a successful vote. I will be the release manager.
--------------------------------------------------------------- [ ] +1 I support this release and am willing to help [ ] +0 I support this release but am unable to help [ ] -0 I do not support this release [ ] -1 I do not support this release, and here are my reasons ---------------------------------------------------------------
Here is my own +1.
-- Martin Cooper
--------------------------------------------------------------------- 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]
