Re: OT: Struts JSR?

2004-03-20 Thread BaTien Duong
Martin Cooper wrote:

On Sat, 20 Mar 2004, Nadeem Bitar wrote:

 

On Sat, 2004-03-20 at 17:47 -0500, Ted Husted wrote:

   

On Fri, 19 Mar 2004 18:53:58 -0800, Nadeem Bitar wrote:
 

If for example JSF 2.0 is available, and Spring Framework is well
integrated with JSF before Struts 2.0 is available, I strongly
believe that struts won't have a place and would lose market shares.
   

First let's be very clear.

It's *not* about market share.

 

I have to disagree with you on this one. Struts is the defacto standard
because of its market share. It is well documented, it has a healthy
community, and struts talent is available easily, because of its market
share.
   

I think what Ted is trying to say is that the Struts developers do not
work on Struts to increase its market share, but because Struts works for
us, and we care to put in the time and effort to maintain and further
develop it. The fact that it has become sufficiently popular to turn into
a de facto standard is nice, but that's secondary to (most of) us, and not
why we're here.
--
Martin Cooper
 

Yes. This has been true right from the beginning.

   

Struts does not need market-share to survive. All we need is a community of developers who use the product and want to help support it.
 

A community of developers would support a product only if they believe
in it. Many hard core struts users and developers are migrating to other
frameworks and this is a loss for the whole community. Struts 2.0 would
have a chance to bridge the gap between struts and other frameworks.
Since Struts 2.0 is still on the drawing board I am only advocating to
do it right even if that means breaking backward compatibility and
making major architecture changes.
   

You are right on the target. With the current thinking of either Struts 
1.3 or Struts 2.0, i think Struts will be a de-facto standard of web 
controller for other frameworks and contaiers.

BaTien
DBGROUPS
   

How many downloads we realize isn't important. Whether 90% or whether 10% of shipping applications use Struts isn't important. What's important is that Struts works well for the people who do want to use it, and that those people want to do the work to make it better.

Of course, if we all find that JSF does most of what we all need, and we want to use it in our own applications, then Struts will quickly become whatever other JSF components we need to ship our own applications. But so long as products like JSF leave out components that real-life applications need, there will always be a Struts. From the beginning, it's always been about providing axles between the wheels that Java already has.

-Ted.



-
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]
   

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

 




Re: Updated Struts-Faces Integration Library

2004-03-08 Thread BaTien Duong
Craig R. McClanahan wrote:

I'm happy to announce the availability of the first nightly build of the
integration library supporting the use of JavaServer Faces and Struts that has
been updated to support the final release of JavaServer Faces 1.0.  This is not
a formal Apache release; however, it is intended to support experimentation and
trigger bug reports so that we can complete a release in the next couple of
months.  Pick up the files dated 20040308 (or later) from:
 http://cvs.apache.org/builds/jakarta-struts/nightly/struts-faces/

Key new features (see the README.txt file for full details):

* Supports the final release of JavaServer Faces 1.0 (previous
 versions supported the beta version).
* Fully worked out examples with and without Tiles.

* You can use value binding expressions (#{...}) for all attributes
 of the Struts specific components, just like you can with all attributes
 of standard JavaServer Faces components.
* A managed bean named struts is available to provide access to
 Struts-internal objects, similar in spirit to the bean:struts
 tag in the existing libraries.
* The integration library supports either prefix mapping (/faces/*)
 or extension mapping (*.faces) for the JavaServer Faces servlet.
* You can use the new s:loadMessages tag to expose a Struts
 MessageResources object as a Map, so that messages can be looked
 up using value binding expressions, similar to the way that the
 standard f:loadBundle tag works with resource bundles.  This allows
 you to use your existing Struts application resources seamlessly with
 non-Struts component tags.
Craig McClanahan

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

 

Great Craig.

You are amazing. We are working with both Struts-Faces and Struts-Chain.

Thanks

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


Re: Does struts-chain work with tomcat 4.1 ?

2004-01-20 Thread BaTien Duong
Patrick Chanezon wrote:

Forget about question 3, and the exception.

It seems like the struts-config.xml file for the struts-chain does not 
contain the welcome actionforward definition.

diff  -U 3 
/Users/pat/java/jakarta-tomcat-4.1.29/webapps/struts-chain/WEB-INF/struts-config.xml 
/Users/pat/java/jakarta-tomcat-4.1.29/webapps/struts-example/WEB-INF/struts-config.xml 

  !-- == Global Forward Definitions 
== --
  global-forwards
forward   name=logoff   path=/logoff.do/
-forward   name=logonpath=/logon.jsp/
-forward   name=success  path=/mainMenu.jsp/
+forward   name=logonpath=/logon.do/
+forward   name=success  path=/mainMenu.do/
+forward   name=welcome  path=/welcome.do/
  /global-forwards

I took the struts-config.xml from struts-example and added the chain 
related configurations and this Exception is not there anymore.
Other problems pop up, but not this one :-)

My other questions still stand.

1. is someone actively working on that code right now ? 
Yes, i am working on struts-chain, but in a slightly different 
direction. To me, struts-chain example is a proof-of-concept. I  am 
still waiting for the codes in struts-jericho to play.

Specifically, i start from JavaServer Faces since stateful UIComponents 
provided by the framework is nice and i expect many complex components 
will be available either commercially or from open sources. I try to 
combine best features of different frameworks by playing around with 
struts-jericho Servlet Request Adapter, Controller and Processor 
overview. The adding of Command Context as suggested in struts-jericho 
is important since each command is a service component that is self 
contained, fully customizable and manageable.

BaTien
DBGROUPS
2. does someone have struts-chain installed and configured correctly ?
from where did you get it ? Any caveats for the build ?
4. I used maven to build struts: the maven dist target's result differs
significantly from ant's dist, and contrib/struts-chain makes some
assumptions about what's 2 levels above that are not met by the maven 
build.
This is whay I had to use a nightly build.
is there a way to generate jakarta-struts's build.properties from 
maven ?-)

Thanks in advance for any input.

Patrick Chanezon wrote:

Hi all,

I started working on struts-chain in order to add support for portlets.

I built struts-chain from cvs, using a nightly struts 1.2 build
jakarta-struts-20040113.zip to bootstrap my build, and my own build of
commons-chain from CVS.
I used the struts-example application from the nightly build as a seed
for the struts-chains sample war.
I deployed both in Tomcat 4.1.29.
struts-example works fine
struts-chain fails with an exception, see below.
I have a few questions:
1. is someone actively working on that code right now ?
2. does someone have struts-chain installed and configured correctly ?
from where did you get it ? Any caveats for the build ?
3. any idea about the Exception ?
4. I used maven to build struts: the maven dist target's result differs
significantly from ant's dist, and contrib/struts-chain makes some
assumptions about what's 2 levels above that are not met by the maven 
build.
This is whay I had to use a nightly build.
is there a way to generate jakarta-struts's build.properties from 
maven ?-)

Thanks for any help.

P@





-
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]
.



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


Re: [Proposal] ActionFactory refactoring

2004-01-02 Thread BaTien Duong
Vic Cekvenich wrote:



Don Brown wrote:
 It would take probably a few hours
to code so little effort is wasted when the struts-chain move takes
place.
I think that is the key at the end of the day. I think it be more 
effective the few hours be spent on integrating IoC into struts-chain 
Yes, integration of Struts-chain and IoC seems to hold a key for 
managing a group of services that are passed via Struts-Chain as a 
controller. I am exploring this with PicoContainer (using 
DefaultLifeCyclePicoContainer which provides both life cycle management 
and Config object).

BaTien
DBGROUPS
but I do not need to remind anyone I am not a commiter, and even then 
each comiter can commit what they please, but I would rather see a 
design of IoC in CoR. If CoR already does digester, it can't be to far 
away from some level of alpha. I think it easier to work with a clean 
sheet of paper, but your preference, thanks for contributions.
Maybe if there is a way to create a commons-IoC-api of interfaces that 
could be implemented as Nano, Hivemind, etc.  and  I duno.

.V



-
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: Struts 2.0 Discussion Forum

2003-12-17 Thread BaTien Duong
Are we on something revolutionary here? I am looking forward to this.

BaTien
DBGROUPS
Don Brown wrote:

Is there one?  I have several ideas I'd like to toss into the discussion.

Don

On 17 Dec 2003 [EMAIL PROTECTED] wrote:

 

husted  2003/12/17 12:49:28

 Added:   contrib/struts-jericho README.txt project.properties
   project.xml
 Log:
 Create whiteboard directory for Struts-Jericho, a working proposal for Struts 2.x.
 Revision  ChangesPath
 1.1  jakarta-struts/contrib/struts-jericho/README.txt
 Index: README.txt
 ===
 Jericho is a whiteboard proposal describing one possible implementation of Struts 2.x.
 Since Struts 2.x is slated as a revolution, the Apache practice is to assign a codename to a proposal until the Community comes to a consensus.

 This proposal is called Jericho since it tries to tear-down the walls within the Struts architecture. Jericho proposes to open-up Struts by

 * Declaring interfaces for all core components.

 * Providing working base implementations for all core components.

 * Encapsulating alll path references within Location objects (fka ActionForwards)and referring only to Locations from all other objects.

 * Providing additional extension points from core components so that the Inversion of Control pattern is fully realized.

 * Providing POJO signatures that encapsulate HTTP classes so that applications can be freed of HTTP semantics, if so desired.

 * Retain optional access to HTTP objects so that applications can be free to do whatever they need to do.

 -Backward Compatibility-

 Jericho is a revolution and backward compatability with prior versions of Struts is not the prime consideration. However, care is being taken to create a clear migration path, where practible, so that Jericho is available to the widest community possible.

 _DTD._ The Jericho Configuration file (DTD) builds on the best aspects of the Struts 1.2 DTD. The elements are different but still similar. Our goal is to allow a tool, such as a XLST processor, to migrate a Struts 1.2 DTD to Struts Jericho.

 A second alternative to explore is to provide an alternate configuration loader that would map the Struts 1.2 elements to Struts Jericho objects at initialization.

 _Base Classes._ New base classes for Struts 1.2.x ActionForms and Actions are to provided. These classes will provide the Struts 1.2.x behavior but also implement the Struts Jericho interfaces, so that the framework can use them interchangeably.

 These same techniques may be applied to provide adaptors for other frameworks, so as to make Struts Jericho available to the widest community possible.

 ###

 1.1  jakarta-struts/contrib/struts-jericho/project.properties

 Index: project.properties
 ===
 # ---
 # P R O J E C T  P R O P E R T I E S
 # ---
 compile.debug = on
 compile.optimize = off
 compile.deprecation = off
 maven.linkcheck.enable=true

 # documentation properties
 maven.xdoc.date=left
 maven.xdoc.version=${pom.currentVersion}
 maven.xdoc.developmentProcessUrl=http://jakarta.apache.org/struts/status.html


 1.1  jakarta-struts/contrib/struts-jericho/project.xml

 Index: project.xml
 ===
 ?xml version=1.0 encoding=UTF-8?
 project
   extend../project.xml/extend
   nameJericho/name
   idstruts-jericho/id
   currentVersion0.1-dev/currentVersion
   inceptionYear2003/inceptionYear
   shortDescriptionStruts Jericho 2.x Whiteboard/shortDescription
   description
   Jericho is a whiteboard proposal describing one possible implementation of 
Struts 2.x.
   Since Struts 2.x is slated as a revolution, the Apache practice is to assign 
a codename to a proposal
   until the Community comes to a consensus.
   This proposal is called Jericho since it tries to tear-down the walls within 
the Struts architecture.
   /description
   developers
 developer
   nameTed Husted/name
   idhusted/id
   email[EMAIL PROTECTED]/email
   organization/organization
 /developer
   /developers
   build
 unitTest
   includes
 include**/*Test.java/include
   /includes
 /unitTest
   /build
 /project



-
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: Portlets Framework

2003-12-17 Thread BaTien Duong
Howdy:

Here is a framework we are working on with very promissing results:
   1) User request is submitted to Struts request/response framework 
RequestProcessor (based on Struts-chain)
   2) RequestProcessor  passes information via ServletWebContext and 
looks into its Catalog of requested ServiceAction.
   3) The ServiceAction uses all facilities of current Struts such as 
ServiceForm, Validation, etc.
   4) The portal page has both static and dynamic fragments. The 
dynamic fragments are passed from ServletWebContext to PortletProcessor 
with contents stored in PortletWebContext. Note that ServletWebContext 
and PortletWebContext are just maps of name/value, same as cornerstone 
IContext.
   5) PortletProcessor calls requested portlet(s) passed via contents 
in PortletWebContext.
   6) Individual portlet  calls its processActions and render which are 
2 cornerstone services for component customization, component 
relationship, control flow customization, and component management. We 
are combining Cornerstone services and Hivemind services into our own 
services. This enable us to leverage on open-source low level 
developments and use it as a backdoor connection for different portlet 
applications which can be replaced with a more vendor neutral of JMS 
service. Security is a concern here, but if you wire various portlet 
applications together you are supposed to know what you are doing. The 
Struts pattern of service firewall such as ServiceForm can be used to 
avoid Trojan hourses.
   7) Results of portlet renders recorded in PortletWebContext are 
returned the ServiceAction, which overwrite its contents in 
ServletWebContext with the contents in PortletWebContext. The results in 
ServletWebContext is passed to Struts-chain ResponseProcessor.
   8) The ResponseProcessor passes ServletWebContext to the selected 
presentation engine, which can be any framework: JSP, JSF, Flex, XForm, 
WML, etc. The presentation engine renders the response using contents 
from ServletWebContext.

Hope this may stimulate into the best flexible framework that we can all 
benefit.

I thought this may be relevant to both Jetspeed and Struts, so I cross 
post in both. Sorry if it bothers you.

BaTien
DBGROUPS
Weaver, Scott wrote:

Hi Punit,

 

For example 
if we want to apply some simple filter on request, which is 
the best place (if any) do to this? How to install common 
portlet filters?
   



Remember, a JSR-168 compliant portal supports portlet applications as
indivdual web apps deployed to the respective servlet container, this a
requirement of the spec. Hence, you can use servlet filters within
individual portlet apps to attain the filter functionallity required by each
indivdual portlet application and the portlets contained within.  It was
crucial to the spec that it leverage as much functionallity from the servlet
standard a possible so as to make portlet and servlet develop easy/similar
as possible.
Hth,
** 
| Scott T Weaver |
| [EMAIL PROTECTED]| 
| Apache Jetspeed Portal Project |
| Apache Pluto Portlet Container |
**

 

-Original Message-
From: Punit Pandey [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, December 17, 2003 8:03 AM
To: [EMAIL PROTECTED]; 
[EMAIL PROTECTED]; 
[EMAIL PROTECTED]; portlets
Subject: Portlets Framework

Hello,
We are in the process of developing one framework for 
portlets. The objective is to apply all possible patterns and 
also try to simplify the development process.

The biggest challenge for developing portlet-framework, seems 
to us, is unavailability of controller servlet. In most of 
the JSP/Servlet-frameworks (e.g struts) the request always 
goes through the controller servlet. But in case of a portal, 
we do not have any such control. Can anyone tell me how to do 
some sort of request-preprocessing for a portlet? For example 
if we want to apply some simple filter on request, which is 
the best place (if any) do to this? How to install common 
portlet filters?

Regards,

Punit Pandey

=
http://portlets.blogspot.com - Portlets blog 
http://groups.yahoo.com/group/portle ts/ - Portlets Discussion Group





-
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: [struts-chain] Some ideas

2003-11-11 Thread BaTien Duong
Craig R. McClanahan wrote:

Quoting Konstantin Shaposhnikov [EMAIL PROTECTED]:

 

Thank you for quick response and your ideas about the
implementation. 

But can I ask you why I can't use the second
approach with struts 1.1. I explore struts-chain code once
again and found that I only need to change 1 Command in
servlet-standard chain. 

   

You can certainly customize the chain if you want to use it with Struts 1.1, but
that means you are playing with unreleased code and having to live with
whatever restrictions exist (for instance, file upload is not currently
supported in the existing chain definitions).
I am imagining a day where we'd build the standard RequestProcessor for Struts
1.2 on top of the chain implementation.
 

And what means provided for backwards compatibility with
Struts 1.1 ? Will the next release replace Actions with
something else?
   

One of the key things people would look for from Struts 1.2 is a relatively easy
migration of existing Struts-based apps.  Therefore, it would seem best for us
to be able to call an app's existing Action classes (as the current
struts-chain implementation does).
In a future world solely based on chain, you wouldn't need the idea of an Action
class at all.  Instead, you'd map the action element in struts-config.xml to
the name of a chain, which could either be a single Command or a series of
Commands -- Struts would not care.  In this environment, there would still be a
standard set of commands in the standard chain, to do all the standard stuff
(like populating a form bean, performing validation, and so on).  But the
thinking is that the app's business logic would be built out of chains as well,
which can (of course) be arbitrarily complex in their internal structure.
Among other things, this would allow people to not have to attempt to use
action chaining, which today causes surprising results.  Instead, you could
build little two-Command chains -- the first would process the form submit, and
the second would do the appropriate setup for the next page to be displayed. 
Because these two behaviors would be separated, you could reuse either or both
of them (for example, cases you need to forward to a particular page from more
than one place, and perform the same setup behavior each time, could share the
second command.
 

In fact, that is what we are attempting to do. For any atomic process, i 
think there are 3 repeatable components: data collection, rule analysis 
based on collected data, and desion based on the analysis. I am planning 
to build these re-useable components based on the chain filter. I  hope 
this will stimulate the interest in the chain of commands.

I am also looking forward to the chain of commands applied to portlet, 
especially:
   1) the modeling of 2 chains: 1 for portlet action and 1 for portlet 
render using the same context
   2) the passing of data fron Struts ServletWebContext to 
PortletWebContext to PortletRequest and PortletResponse that will be 
used on top of Pluto portlet container.
   3) the passing from portlet action to the business processor chain 
so a different business chain is used in the business layer.

Many promissing uses can be happened.

BaTien
DBGROUPS
 

best regards,
Konstantin
   

Craig

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

 




Re:Struts-chain

2003-11-05 Thread BaTien Duong
Howdy:

I am trying to get Struts-chain up and running. I follow the instruction 
of struts-chain in the cvs to build from the source:

export ANT_HOME=.../ant-1.6beta2
export JAVA_HOME=.../j2sdk1.4.2_02
export TOMCAT_HOME=.../tomcat-5.0.14
The build.properties is copied from the build.properties.sample
  servlet.home=.../common/lib
  struts.home=.../jakarta-struts-bin
  chain.home=.../cvs/jakarta-commons-sandbox/chain
export 
PATH=${PATH}:${JAVA_HOME}/bin:${ANT_HOME}/bin:${TOMCAT_HOME}/common/lib/servlet-api.jar:${TOMCAT_HOME}/server/lib/catalina-ant.jar

execute the following command at the struts-chain directory
[-]$ ant clean dist
I got the error:
  /build.xml:54: taskdef class org.apache.catalina.ant.DeployTask could 
not be found

Please feed me the latest instruction to create struts-chain.war

Thanks
BaTien
DBGROUPS


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


Re: Where is Struts 2 going?

2003-09-16 Thread BaTien Duong
Craig R. McClanahan wrote:

On Tue, 16 Sep 2003, Mete Kural wrote:

 

Date: Tue, 16 Sep 2003 11:14:03 +0100
From: Mete Kural [EMAIL PROTECTED]
Reply-To: Struts Developers List [EMAIL PROTECTED],
[EMAIL PROTECTED]
To: Struts Developers List [EMAIL PROTECTED]
Subject: Re: Where is Struts 2 going?
Great! I read the whiteboard. Do you know when the development for the
portlet related aspects of Struts 2.0 may begin. I know that there are
some Jetspeed developers who are interested in contributing to a project
that aims to turn Struts into a portlet framework. I think that adding
more committers to Struts that are coming from a portal/portlet
background would be of great benefit to the development of Struts 2.0.
Unfortunately, I am under-skilled for that, but I can refer some
individuals to you who have the skills from the Jetspeed project, if you
wish.
   

One approach to dealing with it has (in fact) already begun -- in the
contrib/struts-chain subdirectory in the CVS sources is the beginnings
of a refactoring of the standard RequestProcessor based on the
commons-chain package in the Commons Sandbox.  If this actually works,
two really good things might be able to happen:
* It'll work for both servlets and portlets (you can see how the
 command implementations are being abstracted so that the chain
 will just do the right thing for each environment).
* It is likely to be backwards compatible with Struts 1.1 as well,
 possibly with some restrictions yet to be discovered.
The best way to get involved would be to check out CVS sources for both
jakarta-struts and jakarta-commons-sandbox, become familiar with the code
referenced above, and start making suggestions and improvements.  A really
good starting point would be portlet-specific implementations of all the
commands that currently have only servlet-specific implementations.
 

Regards,
Mete
   

Craig

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

This is a very exiting area. I am committed in both Struts-2 and Jetspeed-2.

BaTien
DBGROUPS



Re: JSR 168 and Struts

2003-08-29 Thread BaTien Duong
Clay Richardson wrote:

I apologize if anyone has already asked this question, but I searched
the board and didn't see it.  Also, I tried the user forum first, but
figured maybe this was more appropriate.


JSR 168 has the following line in it (Section PLT.16.3):



Servlets and JSPs included from portlets should not use the servlet
RequestDispatcher forward method as its behavior may be
non-deterministic.
 

Yes, this is one of my concern as well and did not response to this 
question in user group since i have not put enough time in it.

It seems to me that Struts needs to be refactoring to be MVC for 
portlets since portlets can delegate the creation of content to servlet 
and JSP via PortletRequestDispatcher. If there is a proper hook then 
Tiles can still be an intelligent assembling part of the view. Craig is 
the best guy to iron these issues.

BaTien
DBGROUPS



I am no expert on Struts, although I have used it quite a bit.  It seems
that if I wanted to wrap my Struts app in a Portlet and access various
actions through the PortletRequestDispatcher (the most logical
approach), I would run afoul of this warning.


Lacking an implementation to test my hypothesis (*$# IBM legal
department), I am unsure whether this actually fails or not.  My gut
instinct is that it probably wouldn't, but that it may not be reliable
across implementations of servlet and portlet containers.  



I wanted to get some thoughts from the Struts community about this
possible issue.  Also, I wanted to know what the impact would be of
using RequestDispatcher's include method instead?  Or at least providing
the facility to portlet developers?


I apologize if I have wrongly assumed anything in my question.  This is
my best estimate based on what I have read.


Thanks,





Clay Richardson





W. Clay Richardson

Adjunct Professor of Computer Science

Northern Virginia Graduate Center

Virginia Polytechnic Institute and State University



Oh, and how is education supposed to make me feel smarter?  Besides,
every time I learn something new, it pushes some old stuff out of my
brain.  Remember when I took that home wine-making course and I forgot
how to drive? - Homer J. Simpson








 



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


Re: Struts for Portlets (requesting your opinions)

2003-08-14 Thread BaTien Duong
Mete Kural wrote:

Agree. I just read Craig ideal view and I think this view may be a 
good start.
   

I think so too. I will re-state Craig's ideal goal below for others to catch up:

I believe that we should aim for the following ideal state -- a Struts application shoud be usable either as a webapp or as a portlet, with little (ideally no) changes.  Therefore, I believe that we'd build whatever it takes to support this into the standard Struts distribution, which would then be used in both environments.

I would like to ask everybody what their opinions are about this topic. Is it technically possible for Struts to enable the same application to be turned into a webapp or a portlet at the switch of a button? Could the fundamental differences between a webapp and a portlet not allow such a possibility?

Mete

I think somewhere in Bea dev2dev, there is a download to make Struts app 
as a JSR-168 portlet running in Bea portal container. I am more 
interesting in using Struts with no burden and complexity of proprietary 
technologies. Sticking to formal standards, it is easy to adapt to any 
required proprietary environment.

BaTien
DBGROUPS
-- Original Message --
From: BaTien Duong [EMAIL PROTECTED]
Reply-To: Struts Developers List [EMAIL PROTECTED]
Date:  Wed, 13 Aug 2003 12:24:47 -0600
 

Agree. I just read Craig ideal view and I think this view may be a 
good start.

BaTien
DBGROUPS
Mete Kural wrote:

   

Struts-Tiles-Portal-Portlet framework and container.
  

   

I think that there is a big difference between the framework used to build a portal server and a portlet framework. I see that Struts+Tiles is a very good framework to build a portal server, but it seems to me that the ways in which Struts would be used as a framework for building a portal server are very different than Struts being used as a portlet framework.

IMHO, Struts developers should focus on making Struts an efficient portlet framework. Portal server developers could tweak Struts in their own ways in order to use it as a framework for building their portal server, but I don't see the need for standardization in this area. Standardization is rather necessary in the are of using Struts as a portlet framework.

What are your opinions?

-Mete

-- Original Message --
From: BaTien Duong [EMAIL PROTECTED]
Reply-To: Struts Developers List [EMAIL PROTECTED]
Date:  Wed, 13 Aug 2003 11:02:44 -0600


 

Greetings:

I am very interested in this discussion, and will have more time to 
think of the overall structure after the release of JSR-168 Reference 
Implementation (Pluto).

At a cursory level, i see Struts provides very simple and elegant flow 
controllers of what-to-do and how-to-do based on standard Servlet 
container. Tiles is an elegant dynamic templating engine, also based on 
standard Servlet container. I see JSP tiles as a plus rather than a 
short-coming since J2EE has JSP as its dynamic page assembling.  JSR-168 
portal/portlet containers are official extension of Servlet container. 
It seems not a very major issue to make Struts and tiles a 1-2 punch for 
JSR-168 portal/portlet containers. Tiles context may be refactored into 
Portlet context. Tiles already has a facility to dynamically generate 
tile attributes for changing the page assembling. This is probably what 
the JSR-168 authors mention that Portlet can act as controller, fill a 
bean with data, and include a JSP to render the output. See this pattern?

The effort is valuable, since many Struts Plug-ins can be parts of our 
tools. I see Jetspeed is too heavy, not simple and elegant enough to 
realize the potential of JSR-168 and WSRP. We can learn many designs 
  

   

from Jetspeed to bring them into this new portal/portlet framework with 


 

simple and elegant design infrastructure. I hope many designers and 
developers interested in this relevant topic: 
Struts-Tiles-Portal-Portlet framework and container.

BaTien
DBGROUPS
Mete Kural wrote:

  

   

Hello Struts developers,

I wanted to get your opinions on how Struts should be used as a portlet framework. I think that it would be great if a portlet framework was part of the standard Struts distribution in the near future. JSR-168 which defines standard portlets will be finalized pretty soon (a month?), although the specification draft is pretty much stable hereafter.

I have two main questions:

1) My first question is technical. How do you think portlet support would be best added to Struts? Which classes should be extended? Are there necessary changes at the core classes of Struts in order to provide an efficient framework for building portlets?

2) Second question is about how a Struts-based or Struts-like portlet framework should be distributed. Should it be part of the core Struts distribution? Should there be two different Struts distributions within the Struts project: Struts for Webapps and Struts

Re: Struts for Portlets

2003-08-14 Thread BaTien Duong
Agree. I just read Craig ideal view and I think this view may be a 
good start.

BaTien
DBGROUPS
Mete Kural wrote:

Struts-Tiles-Portal-Portlet framework and container.
   

I think that there is a big difference between the framework used to build a portal server and a portlet framework. I see that Struts+Tiles is a very good framework to build a portal server, but it seems to me that the ways in which Struts would be used as a framework for building a portal server are very different than Struts being used as a portlet framework.

IMHO, Struts developers should focus on making Struts an efficient portlet framework. Portal server developers could tweak Struts in their own ways in order to use it as a framework for building their portal server, but I don't see the need for standardization in this area. Standardization is rather necessary in the are of using Struts as a portlet framework.

What are your opinions?

-Mete

-- Original Message --
From: BaTien Duong [EMAIL PROTECTED]
Reply-To: Struts Developers List [EMAIL PROTECTED]
Date:  Wed, 13 Aug 2003 11:02:44 -0600
 

Greetings:

I am very interested in this discussion, and will have more time to 
think of the overall structure after the release of JSR-168 Reference 
Implementation (Pluto).

At a cursory level, i see Struts provides very simple and elegant flow 
controllers of what-to-do and how-to-do based on standard Servlet 
container. Tiles is an elegant dynamic templating engine, also based on 
standard Servlet container. I see JSP tiles as a plus rather than a 
short-coming since J2EE has JSP as its dynamic page assembling.  JSR-168 
portal/portlet containers are official extension of Servlet container. 
It seems not a very major issue to make Struts and tiles a 1-2 punch for 
JSR-168 portal/portlet containers. Tiles context may be refactored into 
Portlet context. Tiles already has a facility to dynamically generate 
tile attributes for changing the page assembling. This is probably what 
the JSR-168 authors mention that Portlet can act as controller, fill a 
bean with data, and include a JSP to render the output. See this pattern?

The effort is valuable, since many Struts Plug-ins can be parts of our 
tools. I see Jetspeed is too heavy, not simple and elegant enough to 
realize the potential of JSR-168 and WSRP. We can learn many designs 
   

from Jetspeed to bring them into this new portal/portlet framework with 
 

simple and elegant design infrastructure. I hope many designers and 
developers interested in this relevant topic: 
Struts-Tiles-Portal-Portlet framework and container.

BaTien
DBGROUPS
Mete Kural wrote:

   

Hello Struts developers,

I wanted to get your opinions on how Struts should be used as a portlet framework. I think that it would be great if a portlet framework was part of the standard Struts distribution in the near future. JSR-168 which defines standard portlets will be finalized pretty soon (a month?), although the specification draft is pretty much stable hereafter.

I have two main questions:

1) My first question is technical. How do you think portlet support would be best added to Struts? Which classes should be extended? Are there necessary changes at the core classes of Struts in order to provide an efficient framework for building portlets?

2) Second question is about how a Struts-based or Struts-like portlet framework should be distributed. Should it be part of the core Struts distribution? Should there be two different Struts distributions within the Struts project: Struts for Webapps and Struts for Portlets? Or should it be a seperate Jakarta project?

I look forward to hearing your opinions.

Thank you very much.
Mete
-
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]
   

-
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: Struts for Portlets

2003-08-14 Thread BaTien Duong
Greetings:

I am very interested in this discussion, and will have more time to 
think of the overall structure after the release of JSR-168 Reference 
Implementation (Pluto).

At a cursory level, i see Struts provides very simple and elegant flow 
controllers of what-to-do and how-to-do based on standard Servlet 
container. Tiles is an elegant dynamic templating engine, also based on 
standard Servlet container. I see JSP tiles as a plus rather than a 
short-coming since J2EE has JSP as its dynamic page assembling.  JSR-168 
portal/portlet containers are official extension of Servlet container. 
It seems not a very major issue to make Struts and tiles a 1-2 punch for 
JSR-168 portal/portlet containers. Tiles context may be refactored into 
Portlet context. Tiles already has a facility to dynamically generate 
tile attributes for changing the page assembling. This is probably what 
the JSR-168 authors mention that Portlet can act as controller, fill a 
bean with data, and include a JSP to render the output. See this pattern?

The effort is valuable, since many Struts Plug-ins can be parts of our 
tools. I see Jetspeed is too heavy, not simple and elegant enough to 
realize the potential of JSR-168 and WSRP. We can learn many designs 
from Jetspeed to bring them into this new portal/portlet framework with 
simple and elegant design infrastructure. I hope many designers and 
developers interested in this relevant topic: 
Struts-Tiles-Portal-Portlet framework and container.

BaTien
DBGROUPS
Mete Kural wrote:

Hello Struts developers,

I wanted to get your opinions on how Struts should be used as a portlet framework. I think that it would be great if a portlet framework was part of the standard Struts distribution in the near future. JSR-168 which defines standard portlets will be finalized pretty soon (a month?), although the specification draft is pretty much stable hereafter.

I have two main questions:

1) My first question is technical. How do you think portlet support would be best added to Struts? Which classes should be extended? Are there necessary changes at the core classes of Struts in order to provide an efficient framework for building portlets?

2) Second question is about how a Struts-based or Struts-like portlet framework should be distributed. Should it be part of the core Struts distribution? Should there be two different Struts distributions within the Struts project: Struts for Webapps and Struts for Portlets? Or should it be a seperate Jakarta project?

I look forward to hearing your opinions.

Thank you very much.
Mete
-
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: Security Solution

2002-04-01 Thread Dr. BaTien Duong

Please post and/or send 1 copy to me. Thanks.

- Original Message -
From: Phase Web and Multimedia [EMAIL PROTECTED]
To: Struts User [EMAIL PROTECTED]; Struts Developers List
[EMAIL PROTECTED]
Sent: Monday, April 01, 2002 11:49 AM
Subject: Security Solution


 Greetings,

 I wanted to offer some code if anyone is interested. I have seen many
 discuss security on archives and wanted to offer an alternative to
container
 managed security.

 I spent some time weighing out whether to use container managed security
or
 not and came to the conclusion that I would use a filter for security.
There
 were several inflexibilities in the spec for container managed security. I
 wrote a security filter that functions very similar to container managed
 security. It has an xml config file that is used to protect urls. There
are
 a few differences in the config and how you define protected areas and
where
 you are directed.

 Basically there are three areas of greater flexibility.

 1) you can define several security-constraint groups with different login
 pages.
 2) you can login easily without having to hit a secure page first
 3) you can set up an app specific security realm. (This can also be
 considered a limitation if you are maintaining cross context security, but
 you could easily tie into a larger security system if this is needed)

 Anyways, it is not the standard but it functions well and gives greater
 freedom. I found container managed security to be a greater hack job
when
 I wanted to accomplish my goals. If anybody is interested I can post it
for
 review. It is certainly not mature and the code is fit for my current
 situation with an eye to greater flexibility. I think that it could
provide
 a good starting point for a cross-container simple alternate solution to
the
 current container managed security.

 P.S. I have to improve the documentation :-)

 Thanks for your time,
 Brandon Goodin
 Phase Web and Multimedia
 P (406) 862-2245
 F (406) 862-0354
 [EMAIL PROTECTED]
 http://www.phase.ws


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




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




Re: Single Signon (was role based actions)

2001-12-31 Thread Dr. BaTien Duong

Yes, I am interested in exploring open souce solution for single SignOn.

I am watching Liberty Alliance, while internally develop solution based on
JAAS, OpenLDAP, and Kerberos.

BaTien

- Original Message -
From: Sandra Cann [EMAIL PROTECTED]
To: Struts Developers List [EMAIL PROTECTED]
Sent: Monday, December 31, 2001 10:09 AM
Subject: Single Signon (was role based actions)


 Batien et al,

 I wonder if members of this list would be interested in collaborating with
 the Expresso community on single sign-on features via our opensource
 listserv or the Expresso Users Forum (Single Sign-on topic).

 The following document url is a summation of a detailed discussion on
single
 sign on from our open source listserv which you might find interesting
since
 Expresso utilizes Struts. (There is also a link to the open source
archives
 on the home page.)

 http://www.jcorporate.com/econtent/Content.do?state=resourceresource=615
 (you will need to be registered at www.jcorporate.com and login to view).

 cheers
 Sandra

  -Original Message-
  From: Dr. BaTien Duong [mailto:[EMAIL PROTECTED]]
  Sent: Tuesday, December 11, 2001 7:53 PM
  To: Struts Developers List
  Subject: Re: role based actions
 
 
  Brandon:
 
  I am interested in your code as we are working on Struts, ldap, and Java
  single SignOn technology.
 
  [EMAIL PROTECTED]
 
  - Original Message -
  From: Phase Communcations [EMAIL PROTECTED]
  To: Struts Developers List [EMAIL PROTECTED]
  Sent: Tuesday, December 11, 2001 4:43 PM
  Subject: RE: role based actions
 
 
   One last thing. When a security check happens and the user is
  forwarded to
   the login. Their desired destination is stored and once their
  security is
   verified they are forwarded on to that page.
  
   -Original Message-
   From: Phase Communcations [mailto:[EMAIL PROTECTED]]
   Sent: Tuesday, December 11, 2001 4:40 PM
   To: Struts Developers List
   Subject: RE: role based actions
  
  
   In my code I extended the action class (not the action servlet) and
  required
   that group access be established on a per extended action class basis.
  
   Defined within my struts-config file in my action class
  definitions I use
  an
   extra attribute(s):
  
   set-property property=group value=agroup /
  
   There is a security check within the extended action class that uses
an
   extended ActionMapping to retrieve the group property and checks it
   against the users information (in a database). If the user
  belongs to the
   proper group or one of the groups defined then it allows them access
to
  that
   action/area with their assigned role and permissions. If the security
  check
   fails, they are routed to a login page.
  
   The other thing that it does is it stores role and permission
  information
  in
   a bean so that security information can be used to define the view as
  well.
  
   I opted out of the container managed security because I was
  working under
   Tomcat 3.2.3 and am trying to create a more independent security
model.
  This
   model also works well for me because I use the command line url
  format for
   mapping to my action classes and none of my views are available but
  through
   action classes (except index.jsp).
  
   I would be happy to share my code if anyone is interested. I think it
is
   flexible enough that it could be incorporated into an ldap
  system. I have
   been confeing with a colleague who is working on struts interacting
with
   ldap for security and profile management.
  
   Anyways if you like the idea of security being managed from the action
  class
   and don't expose your views but through action mappings. This might be
a
   good solution
  
   Brandon Goodin
   Phase Web and Multimedia
   P (406) 862-2245
   F (406) 862-0354
   [EMAIL PROTECTED]
   http://www.phase.ws
  
  
   -Original Message-
   From: craigmcc@localhost [mailto:craigmcc@localhost]On Behalf Of Craig
   R. McClanahan
   Sent: Tuesday, December 11, 2001 10:16 AM
   To: Struts Developers List
   Subject: Re: role based actions
  
  
  
  
   On Tue, 11 Dec 2001 [EMAIL PROTECTED] wrote:
  
Date: Tue, 11 Dec 2001 10:27:52 -0500
From: [EMAIL PROTECTED]
Reply-To: Struts Developers List [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Subject: role based actions
   
   
I am a struts newbie so I apologize in advance if this topic has
  already
beaten to death...
   
 ~~~
   
I noticed role-based actions on the pending tasks list.
  
   Adding this (and a few of the other recent enhancements) to
  Struts 1.1 is
   definitely on *my* list.  I will have some time to do so
  between Christmas
   and New Years.
  
   Craig McClanahan
  
   
Can anyone comment on the status and scope of this effort? (link was
a
   dead
end)
   
The description points to role being driven by security,
  seems the role
   will
be detected and then dispatches to the proper action? points

Re: role based actions

2001-12-11 Thread Dr. BaTien Duong

Brandon:

I am interested in your code as we are working on Struts, ldap, and Java
single SignOn technology.

[EMAIL PROTECTED]

- Original Message -
From: Phase Communcations [EMAIL PROTECTED]
To: Struts Developers List [EMAIL PROTECTED]
Sent: Tuesday, December 11, 2001 4:43 PM
Subject: RE: role based actions


 One last thing. When a security check happens and the user is forwarded to
 the login. Their desired destination is stored and once their security is
 verified they are forwarded on to that page.

 -Original Message-
 From: Phase Communcations [mailto:[EMAIL PROTECTED]]
 Sent: Tuesday, December 11, 2001 4:40 PM
 To: Struts Developers List
 Subject: RE: role based actions


 In my code I extended the action class (not the action servlet) and
required
 that group access be established on a per extended action class basis.

 Defined within my struts-config file in my action class definitions I use
an
 extra attribute(s):

 set-property property=group value=agroup /

 There is a security check within the extended action class that uses an
 extended ActionMapping to retrieve the group property and checks it
 against the users information (in a database). If the user belongs to the
 proper group or one of the groups defined then it allows them access to
that
 action/area with their assigned role and permissions. If the security
check
 fails, they are routed to a login page.

 The other thing that it does is it stores role and permission information
in
 a bean so that security information can be used to define the view as
well.

 I opted out of the container managed security because I was working under
 Tomcat 3.2.3 and am trying to create a more independent security model.
This
 model also works well for me because I use the command line url format for
 mapping to my action classes and none of my views are available but
through
 action classes (except index.jsp).

 I would be happy to share my code if anyone is interested. I think it is
 flexible enough that it could be incorporated into an ldap system. I have
 been confeing with a colleague who is working on struts interacting with
 ldap for security and profile management.

 Anyways if you like the idea of security being managed from the action
class
 and don't expose your views but through action mappings. This might be a
 good solution

 Brandon Goodin
 Phase Web and Multimedia
 P (406) 862-2245
 F (406) 862-0354
 [EMAIL PROTECTED]
 http://www.phase.ws


 -Original Message-
 From: craigmcc@localhost [mailto:craigmcc@localhost]On Behalf Of Craig
 R. McClanahan
 Sent: Tuesday, December 11, 2001 10:16 AM
 To: Struts Developers List
 Subject: Re: role based actions




 On Tue, 11 Dec 2001 [EMAIL PROTECTED] wrote:

  Date: Tue, 11 Dec 2001 10:27:52 -0500
  From: [EMAIL PROTECTED]
  Reply-To: Struts Developers List [EMAIL PROTECTED]
  To: [EMAIL PROTECTED]
  Subject: role based actions
 
 
  I am a struts newbie so I apologize in advance if this topic has
already
  beaten to death...
 
   ~~~
 
  I noticed role-based actions on the pending tasks list.

 Adding this (and a few of the other recent enhancements) to Struts 1.1 is
 definitely on *my* list.  I will have some time to do so between Christmas
 and New Years.

 Craig McClanahan

 
  Can anyone comment on the status and scope of this effort? (link was a
 dead
  end)
 
  The description points to role being driven by security, seems the role
 will
  be detected and then dispatches to the proper action? points to assoc'd
 form
  through config?
 
  Is this intended to be used for personalization to the extent where a
 person
  of one role gets a different view, can user customize their view?
 
  Does this provide a place holder for that kind of functionality v. any
  particular built in functionality?
 
  Thanks, sorry if the questions were a little obtuse.
 
  -Rick Vaillancourt
 
 
  --
  To unsubscribe, e-mail:
 mailto:[EMAIL PROTECTED]
  For additional commands, e-mail:
 mailto:[EMAIL PROTECTED]
 
 


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




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




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




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




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