This should be doable.
I will add it to the next release of Struts Workflow extension on Source forge, as
soon as it is available for download.
Till then use the hastily crafted code from me.
I have not tested it ,so please test it and let me know.
Add this to the source code you have for
Hello Scott,
I have already replied to this message.But my replies to the list were bouncing since
this morning.So reposting the reply.
As the SSL extension and Workflow extension modify different parts of the response
cycle, they are not mutually exclusive.
Just that nobody came up with the
If you are writing a tag,The output generated by your tag should be valid html.
Because the life cycle is as follows.
1--The ServletContainer gets a request for a particular page(In this case your .jsp
page)
2--The request being for a JSP page, the servlet container decides to pass it on to
The reason is jsps are not compiled when you hit the pages the first time.So the first
call will always be slow as it alos has to compile jsps.The subsequent calls will use
the compiled jsps and hence faster.
Some server/ServletEngines have the option to precompile jsps.
HTH.
Regards,
Shirish
The initialization of most of resources(ResourceBundles etc) should take place when
the webApplication is initialized.So I do not see that as a problem.
But anyhow, when you say slower or faster,what is the time difference we are talking
about?
Are you sure no other process on the same
Hi,
I am not sure why you want to have a central controller and secondary controllers.
My experience is that if you have single controller,the application is more easy to
maintain.
But if at all you want different controllers because you have different modules, then
may be in struts 1.1 , you
use findForward action to dispatch the request to different actions depending upon the
button pressed or use DispatcherAction
-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: Monday, March 15, 2004 1:16 PM
To: [EMAIL PROTECTED]
Subject: Handling multiple submits
Hi Dean,
The struts workflow extension will just work as well with dynaValidatorForms or any
other type of bean you use as form bean.The only point where it differs from standard
struts is the ActionMapping.It uses a ActionMapping class of its own.But that also can
be taken care of.
Just start
Hello Edd,
I do not see any reason why the workflow extension should not work with STXX or any
other extension..Apart from only one reason..STXX needs its own request processor
which is not working
.But As I have not used STXX,i am not sure about it.
But from what you have posted to me ,I can
Can you send the mail without the entrust cretificate?
I can not read the mail and hence help you :-((
-Original Message-
From: stu [mailto:[EMAIL PROTECTED]
Sent: Thursday, March 11, 2004 3:04 PM
To: [EMAIL PROTECTED]
Subject: Re: help me with using bean
File: SMIME.txt
There is another age old method to debug jsps...
Just comment out entire code and uncomment the code incremently to see exactly which
portion of jsp is causing problems.Has worked well for me many times..But this
technique works well only if you have some part of jsp which is causing problem in
Hi,
Those setters will be called on the ActionMapping you specify.So the same will me
available in all actions as attributes on your custom ActionMapping class(Subclass of
ActionMapping.)
And you have to configure the struts to use your action mapping as follows.
/global-forwards
!--
Hello,
The demo application code is included with the downloaded source code.If you have
downloaded the sourcecode, just look under the demo folder.
Also you have any doubts/questions, get back to me.
Regards,
Shirish.
-Original Message-
From: Edd Dawson [mailto:[EMAIL PROTECTED]
Sent:
Also you need not use the session scope for the form.What ever data you want to share
across pages, you can use workflow container to hold that data...
Have a look at the Demo application and Test Application(available with the standard
download ).The test application in fact demonstrates
return null from the action instead of returnign a forward.
-Original Message-
From: Vasudevrao Gupta [mailto:[EMAIL PROTECTED]
Sent: Wednesday, March 03, 2004 3:58 PM
To: 'Struts Users Mailing List'; 'Satya Narayan Dash'
Subject: Viewing .pdf files usign struts frames work..
Hi All,
Hi ,
What you are looking for may be fits in workflow pattern.
We had some discussion about this on the list some time back.
the approach you have seen will work well, but the only problem that I can see is the
form will stay in session.
And being a web application, the user can jump any
genarally you get this error with lists if you are iterating over list and remove
element/add element to list..
-Original Message-
From: Sergei P. Volin [mailto:[EMAIL PROTECTED]
Sent: Tuesday, March 02, 2004 7:08 PM
To: Struts Users Mailing List
Subject: Re:
Hi,
The taglibs will work, whether or not the page is being handled by struts
controller,so long as they have the required objects(form bean , other beans)in the
scopes mentioned in jsps.
:-))
-Original Message-
From: Mainguy, Mike [mailto:[EMAIL PROTECTED]
Sent: Monday, March 01, 2004
Hi,
I don't think building a real workflow would be that simple.I mean the workflow must
be built in the framework, the actions being just configured to use it.
And why reinvent the wheel when there is already a solution :-))
Have a look at http://www.livinglogic.de/Struts/
We used it in our
But using lazy initialization is simple...
See my earlier post...
I am resending my earlier mail to another user.Go through the sample code
and
ask me if u dont understand something.
The important portions are commented.Especially look at the jsps property
how
it is set and also the form
I have not understood your problem completely.
But this looks like more a problem of resetting the list in form than anything else.
Firstly, if you are using request scoped form, then why going from page 1 to page 2
will apend the beans to form?
Are you sure you are using request scoped forms?
You can very much do so.
We had a completed 50% of our application when we migrated to Tiles.
That is what we did.
Instead of changing the existing working functionality,We just started using tiles for
new development.As a result , we have tiles definitions as well as normal jsps.
BTW,there
XML Spy has a visual XSLT designer...I have never used the visual designing features ..
But any how, XML Spy suit is really good ..I have used it to design my xslts for
XSL:FO transformations...I have found the the hierarchial(node like)view very
conveninent.
-Original Message-
From:
This is not entirely true:-((
Even if the user disables cookies, you can use still URL rewritting to maintain
sessions...
I always thought that struts tags take care of URL rewritting for you in case cookies
are disabled.
-Original Message-
From: Navjot Singh [mailto:[EMAIL
very well said :-))
+1
-Original Message-
From: Niall Pemberton [mailto:[EMAIL PROTECTED]
Sent: Monday, February 16, 2004 5:26 PM
To: Struts Users Mailing List
Subject: Re: [OT] - Request against Session
Sorry if I'm regurgitating, but I haven't really been following this debate.
The
But what we are talking about is the concept functionality.And what you are saying
is the implementation.
Agreed the workflow container is in session scope .But for the user(The developer), it
gives the choice of an additional scope definition.How it is implemented is not
important.
Any how,
True.
But as soon as the user exits the workflow, the workFlow object is cleared.So instead
of having a session with n number of objects still in session you have the session and
the workflow container which is empty(assuming the user has exited the workflow.).
-Original Message-
From:
???
-Original Message-
From: Michael McGrady [mailto:[EMAIL PROTECTED]
Sent: Thursday, February 12, 2004 11:56 PM
To: Struts Users Mailing List
Subject: RE: [OT] - Request against Session
The work flow solution being talked about actually is the worst bloat for
the session. It uses
can you get the html code generated by your jsp?(using view source on that perticular
page).The parameter name generated may be of help...
But i can immediately see one problem.
The example you are refering to contains List Of beans...So when a parameter reference
like emp[i].name is created ,
Hi Mark,
Sorry for not responding to your mail.
Just got bogged down with work today.Having a lot of issues with the UAT right now.I
had started the mail for you.But could not write a satisfactory
(Understandable)explanation in short time.So the mail is incomplete till now :-((.
I will try to
This is one of scenerios I was talking about.But I am not sure if this problem is
specific to forms being in session.I mean even if the form is in request(but has al
teh data necessery to perform the request), even in this case the user may have 2
different windows open(One old and one
http://www.livinglogic.de/Struts/introduction.html
-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: Friday, February 13, 2004 3:04 PM
To: Struts Users Mailing List
Subject: Where are the workflow extensions?
Hi I see all this chatter about Struts workflow
Hi,
Had almost forgetten about your mail :-((
We have following action hierarchy.
AbstractApplicationAction(As per struts best üractice guidelines...)
|
|--|
| |
AbstractOpenAction
Hi Guys,
I think the issue over here is, in such cases we need a new scope(workflow scope).The
existing scopes(request/session) do not suffice in such cases.
The session scope can be used but it may not be cleared.So there has to be a solution
at architecture level.And the struts workflow
The whole point is there is no concept of a Workflow scope in Servlet API and if you
want to share objects , you have to put them in session.And then clearing them is not
always easy, as you will never be clear when user may leave the workflow scope.And you
have to code for it in every action.
snip
If the user has multiple windows open all sharing a session and does
different things in different windows things get really fun.
/snip
If user has different windows in different windows, then only the latest windows
workflow is honoured.SO all other window will have lost thier workflow
The performance is not the only issue with bloated sessions
Like in our current project, we are using WSAD4.0 and websphere does nto guareentee
that session will be transferred across in a clustered environment if the session size
is more than 4k..And we are having our depoyment in a
I think the use case you have is a very valid one .But you can always have more than
workflows (But only one primary workflow..)But any how,
if the operator opens multiple windows(for different calls), and accidently changes
data for user 3,thinking that he was working on window for user 2??
See this mail.MAy be this will help you..
http://marc.theaimsgroup.com/?l=struts-userm=107458904510606w=2
-Original Message-
From: Mark Lowe [mailto:[EMAIL PROTECTED]
Sent: Monday, February 09, 2004 5:03 PM
To: Struts Users Mailing List
Subject: Re: Problems (re)populating nested bean
Nest two logic:Match or logic:equals tags one inside another :-))
-Original Message-
From: Oliver Thiel [mailto:[EMAIL PROTECTED]
Sent: Monday, February 09, 2004 6:07 PM
To: [EMAIL PROTECTED]
Subject: Struts Tag
Hi,
does anyone know a tag like logic:Match or logic:equals
beside that
Hi,
We have implemented similar concept.And you are right.You have to be careful not to
redo the last posts.
Luckily for us, the desin we had solved the problem.We have a concept of
OpenAction(Actions that prepare data for view) and Save action(Post actions,actions
that update DB).So in
Hi,
We have just created an account with source forge for the workflow extension project
and will be transferring the source code etc. to that account in the next couple of
days.
So we are just in early stages of code transfer.
But regarding your question.
As you said,most of the workflow
Why not change those forms to request scope instead?Where ever feasible I mean.If any
data is not shared across pages in a wizard like flow, just put that form in
request.This should be applicable to 90% of the cases.
But It may not be as simple as that.You may have to retest entire application
There is LogManagerclass with LoG4j.
It allows you to reset the configuration for entire LOG4J environment.And then as you
said, you can reread the property file to initialise the log4j environment from the
changed property file.
HTH:
regards,
Shirish
-Original Message-
From:
Hi,
Also there is something called ReloadingPropertyConfigurator..May be this in
combination with HierarchyEventListener will do the trick for you.
I mean the log4j API is so feature rich, you should not be required to write something
for such a common task.
regards,
Shirish.
-Original
Hi Guys,
I am not sure if this is the proper place to ask this question or I should be asking
this in struts developers mailing list.
I have used the workflow extension for struts
(http://www.livinglogic.de/Struts/introduction.html) and found it very useful.
I think workflow is a very very
Hi,
If the data on first 2 pages is not very large, I will go for using hidden parameters
to pass it to the third jsp.
I see a couple of problems with the session approach.First and foremost, there is no
guaranteed way of clearing the from session as the in a typical web application uyer
can
But why to take all the effort?I mean then the struts auto population will not
work.Also as all the parameters will still be as hidden parameter(but just one), you
do not even gain any performance benefit.You end up generating more traffic due to XML
markup.So is there any other benefit of this
Why don't you have separate tomcat installation for every developer?
Each developer can periodically synchronize with the repository to keep uptodate.But
since the server installation is separate, he can restart it as many times he wants
without affecting others..That is teh strategy we are
Hi Parag,
there are many ways of doing this.
1:One action per function(Add,Delete,Edit will each be handled by separate action.)
2.Single action handling all operations(Create,Edit,Delete).on one page.
there are advantages and disadvantages or we can say they reflect different design
I am resending my earlier mail on this user list..Go through the sample code
and
ask me if u don't understand something.
The important portions are commented.Especially look at the jsps property
how
it is set and also the form bean.The property syntax I have used was for struts 1.0
..But with
See my earlier reply to the question getting data from form with nested beans or
search the user archive on the above key...
regards,
Shirish
-Original Message-
From: Matthias Winkler [mailto:[EMAIL PROTECTED]
Sent: Tuesday, January 20, 2004 4:16 AM
To: [EMAIL PROTECTED]
Subject: Write
The scope of form has nothing to do with usage of nested beans.And using session scope
shoudl be avaided as far as possible as teh form will stay in session till it is
explicitely removed from there..
The % % business is for the scripts so that the nested property reference can be
created.But
Hi,
Is it flaming or what?I thought we were trying to solve each others problems.Still a
last try.
We have a complete application(3 modules/4000 classes/15 companies live as of date)
which uses all form beans just in request scope.And all over the place we have used
form beans in request
yes:-))
And I am sure most of the people do have the same.I mean tieing the nested properties
to the session scope does take away a lot of flexibility.
Anyhow just try my sample code...It should demonstrate the concept.
regards,
Shirish
-Original Message-
From: Mark Lowe [mailto:[EMAIL
I did not get your question clearly.
When a new form(instance of ActionForm) is created, users input is not lost.The users
input is still in the request Object.(Are you confusing the Form on screen with the
ActionFOrm object on server side?).So after the instance of ActionForm is created, it
You ahve a fixed length or Empty list in the form.So when the auto population tries to
populate the nested bean for the list which is empty/fixed size,you get this
exception.
Try to use lazy list or search the archive for nested property usage...There are many
examples which will demonatrate
Hi,
We have applied following approach in the project.
A project level variable (system variable) is defined..e.g. MY_PROJECT_HOME
And all file paths are resolved relative to this home.So all our configuration
files(which are XML files) just give a path relative to the project home
and a
Hi,
Its a good idea to use just form.getAttribute than use request.getparameter..I think
that is major advantage with struts...You should no longer be using this syntax.The
form should be a complete container as far as actions are concerned.The advantage is
that just by looking at the form you
We also have used the same approach where data retrieval and data update is taken care
of by different actions...We call them open action and save actions..
And This has really served us well.I mean you may want to to show the same page after
some other action..So in that case you just forward
The simplest way(And more struts way) would be to define a forward in action 1 which
points to action 2.
And then return that forward from the execute method...
-Original Message-
From: Sudhakar G [mailto:[EMAIL PROTECTED]
Sent: Wednesday, January 07, 2004 6:21 AM
To: [EMAIL PROTECTED]
Hi,
We had teh same question.But I have read that the performance issue with reflection
has been resolved from jdk1.3 and jdk 1.4 so that it is almost undetectable.Check the
release notes for those versions of jdk to get more details about the same.
HTH.
regards,
Shirish
-Original
Hi ,
As pointed out by Mohan, Action chainning is not a good design practice...
You can forward from one action to another but they should eb performing completely
independent units of work.If two actions are used to complete only bits of work to
complete one logical response, then it is a bad
Your first point of using a href=xxx.pdf target=_blankxxx/a to make it open in
a new browser is valid..
But the second point i did not get it.
Exactly for those situations where the user is prompted for save dialogue box,I have
suggested to add the response.addHeader(Content-Disposition,
Hi,
Also do not forget to set the header so that the save as dialogue box is displayed in
IE...For that you have to set the content-disposition header ..
following is the code from our project..
Class FileOpenAction{
protected final void returnBinaryFile(
Hi,
I found the idea interesting..
But I have a couple of questions...
the assumption you are making here is entire request parameters are captured in the
form...How else can you call some action if it does not have access to all the request
parameters..
Also it means that the action have
There is another way..I think struts has a lazy list implementation which takes of
thsi problem...
Or see this post..This is reply to a similar question that was asked on the list
earlier...And this is a lot cleaner implementation...
Look at the struts documentation ..Especially the getting started guide...
But the simple rule is you should have matching attributes on your form...SO struts
autopopulation will take care of transferring the parameters to the form..You can just
you the getters on the form to access those
Hi,
I think many of us come across same problems ..And as you said, it is always not easy
to come with an easy solution ..
But following approach will avoid code duplication...And also keep seperation between
business layer and Presentation layer(web layer)..
In the forms just do the
Hi,
If you download the workflow extension and see the etst app, you will get a better
idea..
http://www.livinglogic.de/Struts/exampleApp.html
But as you said, the workflow solution works exactly the way you said...If there is no
workflow configured, then the actions will work the normal way.
Hi,
Did you have a look at the workflow extention for struts?I wil advice you to have
alook at the demo application to see if this is what you are looking for.
http://www.livinglogic.de/Struts/demoApp.html
And also the site has some introductory material...And best of all it is Open Source
as
Hi,
There was a long discussion about action chainning some time ago.
http://marc.theaimsgroup.com/?l=struts-userm=104427309720653w=2
And as summarized in the above discussion, I think if you are using 2 actions to
complete 1 logical function, then it is bad design.And that is what I think the
easy pizzy...We are already having the same scenario.
Don't use the default log4j initialization(which means just putting the
log4j.properties file in the class path and forget about it.)This way you have no
control over the initialization.
You write a class(e.g. LogEnvLoader) and in that class
Hi,
I think tilesCOntroller class concept is for the same purpose.Whenever the tiles is
rendered, the controller class is called prior to that which should perform the
business logic necessary to prepare business data..
But I would rather prefer the struts way.I mean prepare a struts action
Why will u need to create a temp html file if all that u want is to show it in browser?
Just write it to the outputstream of response...Unless offcourse u need it for some
other purpose as well.
-Original Message-
From: Jimmy Emmanual [mailto:[EMAIL PROTECTED]
Sent: Friday, November 14,
I think the dynaFormBean is there for exactly same purpose
-Original Message-
From: Sumit S. [mailto:[EMAIL PROTECTED]
Sent: Tuesday, November 11, 2003 4:17 PM
To: [EMAIL PROTECTED]
Subject: ResultSetDynaClass etc...
The ResultSetDynaClass ResultSetDynaBeans are a powerful way of
Are you setting the mime type properly on the response object?
-Original Message-
From: Abhijeet Mahalkar [mailto:[EMAIL PROTECTED]
Sent: Monday, November 10, 2003 1:55 PM
To: Struts Users Mailing List
Cc: WebSphere User Group Tech Q A Forum
Subject: PDF File Display in JSP-Struts
Hi
The better approach would be to set the proper mime type in the action itself...So
that u dont put any restrictions on jsps then...And any how, if you are writing the
pdf to output stream, why you still want to forward to a jsp? Why not return a null
forward in that case?
-Original
search the user archive..This has been answered many times before..
The solution is use lazyList implementation by struts or Dynamic arryList as
implemented in my Solution..(See in the list archive)..I think that is what u have
also said u tried..And it works..I have also answered thsi question
Hi,
You can handle the same problem in another way.Same thing we have handled this way.
In such cases, when user resubmits the saveAction, we detect that the form is
resubmitted using struts tokens and then instead of notifying the user that he has
resubmitted, we just forward him to success
Hi,
But I think over here you are missing one important point.
Out of those 3 records, the client will want to browse over only a couple of (may
be a couple of hundreds).
So as and when he requests, geting a few of them(stanadard pageful records at a
time)wont be slow.Just retrieving all
getForumGroup will be right..Actually u can name the property whatEver you want..I
mean you can call it even getXyz..The only important point is when you use the struts
tags, the property attribute should be the name of the getter method minus the get..So
in your case it will be forumGroup or
Use struts tags for everything except for the form tag...The in the action attribute
you can give the url to external site..
-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]
Sent: Tuesday, November 04, 2003 11:35 AM
To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
Subject:
This looke like correct to me.Because if you do not select anything, that also means
that there wont be any value sent for that request parameter.And so the setter will
not be called.
You can runa simple check.Check by calling request.getParameter if any parameter with
the name for the select
what is it you are trying to do?I mean why the setter should be caled when nothing is
selected?
Just curious :-))
-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: Tuesday, November 04, 2003 4:41 PM
To: Struts Users Mailing List
Subject: RE: Problem with
If you use Tiles Definitions, you can get rid of this second jsp(holder jsp) per
page.So you end up writing just one jsp(te body part jsp)per page..
Following is what you do.
Write one jsp which include all the reusable jsps and have the common layout for your
site.
I call this
Search the user archive...
This question has been answered many times(Use of lazy lists is one of the ways to
manange the list runtime..)
-Original Message-
From: hsc [mailto:[EMAIL PROTECTED]
Sent: Tuesday, October 21, 2003 9:29 AM
To: [EMAIL PROTECTED]
Subject: Re: Indexed Properties
You are 100% right..(In my opinion...)
Actually thats what we have done in our project..We have extended message tag and
ActionMessage class (EqActionWarning,EqActionError,EqActionMessage)..And each of these
has a static property (E.G. EqActionMesage.ACTION_MESSAGE) Wwhich is used by default
can you elaborate a little?
Too less info :-((
-Original Message-
From: Axel Gross [mailto:[EMAIL PROTECTED]
Sent: Monday, October 20, 2003 5:03 PM
To: [EMAIL PROTECTED]
Subject: [Struts Workflow] Test application - why two actions for loop?
Hello!
I had a close look to the test
May be in the reset you have emptied the list..
Have a look at ListUtils.lazyList..That may solve your problem...
-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: Thursday, October 16, 2003 5:57 PM
To: [EMAIL PROTECTED]
Subject: ArrayIndexOutOfBoundsException
You dont need to subclass the action servlet just for the init code...
Write u r own servlet(InitializationServlet)and put it in the init method of this
servlet.
When configuring the servlets in web.xml have somethign like this.
servlet
servlet-nameInitializationServlet/servlet-name
Try a combination of logic:equal and logic:NotEqual...
Also try TRUE (In caps..)I had similar problems and i solved them using those
techniques...
-Original Message-
From: Chawla, Yogesh [mailto:[EMAIL PROTECTED]
Sent: Tuesday, October 14, 2003 10:25 AM
To: 'Struts Users Mailing List'
The forward definition should be just /go.do and then before doing forward add the
param to the actionFOrward...
Something like
return new ActionFOrward(forward.getPath() + ? + page= + templateEdit)
-Original Message-
From: CuteProgrammer [mailto:[EMAIL PROTECTED]
Sent: Monday, October
All parameters passsed are available in TilesCOntext..
Search the message archive for accessing TilesContext in java..
-Original Message-
From: Sudip Kumar Bhattacharya(HOTPOP) [mailto:[EMAIL PROTECTED]
Sent: Monday, October 13, 2003 2:11 PM
To: Struts Users Mailing List
Subject:
Hi,
I dont think you can have logic tags in definition files.But if your menu requirements
are simple(Only a few roles for which you have different groups menu items), then you
can easily do as follows.
Create different menu difinitions for each role.
And in the menu.jsp when inserting the
have a look at html:link tag documentation ...And try to use the struts tags as much
as possible...
-Original Message-
From: Peng, Meimin [mailto:[EMAIL PROTECTED]
Sent: Wednesday, October 08, 2003 5:23 PM
To: 'Struts Users Mailing List'
Subject: html tag newbie question
Hi,
I am very
%@ page language=java %
%@ taglib uri=/WEB-INF/struts-bean.tld prefix=bean %
%@ taglib uri=/WEB-INF/struts-html.tld prefix=html %
%@ taglib uri=/WEB-INF/struts-logic.tld prefix=logic %
html
head
titleTest Indexed property/title
/head
body
html:form action=/Validate.do
html:text
which tags you are using to display the bean information?If you are using bean:write,
then there is some option to turn of entity replacement.CHeck teh documentation for
the tag...
-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: Monday, October 06, 2003 3:30
Hi,
I think what you are saying (The scenarios you have described )is not possible with
the current workflow implementation.
Because when a user leaves a workflow(Like you said, he is bored and clicks on a menu
link.), then there is a workflow violation and the workFLow for whicch this
Hi,
The problem seems to be that when you are using bean:write, the data you write is not
included in the request when the page is displayed.So if you want to resedn the same
data as part of request, use html:hidden along with bean:write.
I did not go in much detail of your code.But I think
1 - 100 of 176 matches
Mail list logo