Re: [s2] Struts head tag KILLS ( 10s) page load time
Ahh! That was my problem. I think it would be worth mentioning this in the documentation, especially since it is the reverse of 2.0.x. It's not real clear in the state example which is the key and which is the value. I tried to edit the docs myself, but the wiki told me I did not have permission. Thanks for your help, Ben Musachy Barroso wrote: One think to keep in mind is, when you build the json, the key and the values are in the wrong order. So it would be: { Alabama : AL } instead of : { Al : Alabama } I know it is confusing, but we inherited that from Dojo and changing it would break backward compatibility. regards musachy chengas123 wrote: Converting the tags to use the new library wasn't very hard except that I can't seem to get the new tags to work. I turned the debugging on in the head tag and the only debug message I got was DEBUG: please consider using a mimetype of text/json-comment-filtered to avoid potential security issues with JSON endpoints. I've placed the relevant code from my .jsp below. Is there anything I forgot when converting to 2.1 besides the steps Nicholas mentioned? I do see my action being called when I type in the autocompleter box. If I manually visit the URL I am given the following JSON: {1:Internet Services} %@ taglib prefix=sx uri=/struts-dojo-tags % sx:head cache=true debug=true / sx:autocompleter label=Department forceValidOption=true cssStyle=width:132px; height:18px; border:1px solid #7B9EBD name=department required=true href=%{departmentList} loadOnTextChange=true showDownArrow=false searchType=substring / Thanks, Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13064915 Sent from the Struts - User mailing list archive at Nabble.com. -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13098417 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
To edit a page in the main documentation wiki, we need a CLA on file first. * http://struts.apache.org/2.x/docs/editing-the-documentation.html But, if you open a Confluence account, you should still be able to add a comment. -Ted. On 10/8/07, chengas123 [EMAIL PROTECTED] wrote: Ahh! That was my problem. I think it would be worth mentioning this in the documentation, especially since it is the reverse of 2.0.x. It's not real clear in the state example which is the key and which is the value. I tried to edit the docs myself, but the wiki told me I did not have permission. Thanks for your help, Ben Musachy Barroso wrote: One think to keep in mind is, when you build the json, the key and the values are in the wrong order. So it would be: { Alabama : AL } instead of : { Al : Alabama } I know it is confusing, but we inherited that from Dojo and changing it would break backward compatibility. regards musachy chengas123 wrote: Converting the tags to use the new library wasn't very hard except that I can't seem to get the new tags to work. I turned the debugging on in the head tag and the only debug message I got was DEBUG: please consider using a mimetype of text/json-comment-filtered to avoid potential security issues with JSON endpoints. I've placed the relevant code from my .jsp below. Is there anything I forgot when converting to 2.1 besides the steps Nicholas mentioned? I do see my action being called when I type in the autocompleter box. If I manually visit the URL I am given the following JSON: {1:Internet Services} %@ taglib prefix=sx uri=/struts-dojo-tags % sx:head cache=true debug=true / sx:autocompleter label=Department forceValidOption=true cssStyle=width:132px; height:18px; border:1px solid #7B9EBD name=department required=true href=%{departmentList} loadOnTextChange=true showDownArrow=false searchType=substring / Thanks, Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13064915 Sent from the Struts - User mailing list archive at Nabble.com. -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13098417 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- HTH, Ted http://www.husted.com/ted/blog/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
There's not a link anywhere on the page to add a comment: http://struts.apache.org/2.x/docs/autocompleter.html Is there some other way I need to access that functionality? Thanks, Ben Ted Husted wrote: But, if you open a Confluence account, you should still be able to add a comment. -Ted. On 10/8/07, chengas123 [EMAIL PROTECTED] wrote: Ahh! That was my problem. I think it would be worth mentioning this in the documentation, especially since it is the reverse of 2.0.x. It's not real clear in the state example which is the key and which is the value. I tried to edit the docs myself, but the wiki told me I did not have permission. Thanks for your help, Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13103506 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
It's a bit kludgy. If you select edit page, and you are not logged in, it will prompt for your credentials. Once past that, you should end up on the wiki side, for example at * http://cwiki.apache.org/confluence/display/WW/Home At this point, there should be a Add Comment link at the bottom of the page. The autoexport template is not showing the comments on the autoexport page, but maybe we can push to get the comments rolled into the main text for 2.1.0. There doesn't seem to be a report, but the daily updates mention when comments are added. -Ted. On 10/8/07, chengas123 [EMAIL PROTECTED] wrote: There's not a link anywhere on the page to add a comment: http://struts.apache.org/2.x/docs/autocompleter.html Is there some other way I need to access that functionality? Thanks, Ben Ted Husted wrote: But, if you open a Confluence account, you should still be able to add a comment. -Ted. On 10/8/07, chengas123 [EMAIL PROTECTED] wrote: Ahh! That was my problem. I think it would be worth mentioning this in the documentation, especially since it is the reverse of 2.0.x. It's not real clear in the state example which is the key and which is the value. I tried to edit the docs myself, but the wiki told me I did not have permission. Thanks for your help, Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13103506 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- HTH, Ted http://www.husted.com/ted/blog/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
Ahh. I'm afraid I never would have figured that out without explanation since I get permission denied when hitting the edit link. -Ben Ted Husted wrote: It's a bit kludgy. If you select edit page, and you are not logged in, it will prompt for your credentials. Once past that, you should end up on the wiki side, for example at * http://cwiki.apache.org/confluence/display/WW/Home At this point, there should be a Add Comment link at the bottom of the page. The autoexport template is not showing the comments on the autoexport page, but maybe we can push to get the comments rolled into the main text for 2.1.0. There doesn't seem to be a report, but the daily updates mention when comments are added. -Ted. -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13104703 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
The speed issues are much better in 2.1. However, now when I load the page, every autocompleter on that page is issuing a request. Is this a bug or have I configured something incorrectly? I believe the default behavior for this should be to issue a request only after three characters have been typed. Here's an example of how I am including an autocompleter on my page: td style=width:150px s:text name=form.label.lastName/br / s:url id=lastNameList action=AutocompleteField method=getLastNames / sx:autocompleter name=lastName id=lastName cssStyle=width:132px; height:16px; border:1px solid #7B9EBD href=%{lastNameList} size=22 dropdownWidth=200 dropdownHeight=150 showDownArrow=false autoComplete=false loadOnTextChange=true searchType=startstring / /td Thanks, Ben Musachy Barroso wrote: Setting cache=true will pretty much kill the Dojo lazy loading feature, as it will use a custom build (all the required js files compressed in one file). On top of that 2.1 won't scan the whole page for widgets, which will make it even faster. musachy -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13105568 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: [s2] Struts head tag KILLS ( 10s) page load time
Converting the tags to use the new library wasn't very hard except that I can't seem to get the new tags to work. I turned the debugging on in the head tag and the only debug message I got was DEBUG: please consider using a mimetype of text/json-comment-filtered to avoid potential security issues with JSON endpoints. I've placed the relevant code from my .jsp below. Is there anything I forgot when converting to 2.1 besides the steps Nicholas mentioned? I do see my action being called when I type in the autocompleter box. If I manually visit the URL I am given the following JSON: {1:Internet Services} %@ taglib prefix=sx uri=/struts-dojo-tags % sx:head cache=true debug=true / sx:autocompleter label=Department forceValidOption=true cssStyle=width:132px; height:18px; border:1px solid #7B9EBD name=department required=true href=%{departmentList} loadOnTextChange=true showDownArrow=false searchType=substring / Thanks, Ben Engelking, Nicholas wrote: One thing to keep in mind is that you will have to migrate from the old struts tags with theme=ajax to the new ajax specific struts tags. I found that the new tags were basically the same as the old ones, but I did have to go through, drop the theme, and change the tag library. It's probably something that you can automate with regular expression though. On a side note, I am in the process of migrating out of dojo for performance reasons. Even with the new caching feature, turning parseContent off, and using the tomcat native library, widget loading in the browser (especially i.e. 6, which is our target platform) is slow. Server response times are quick, but it just takes the dojo framework a long time to register a high number of widgets per page (in one case over 600 in our site). I think the sight could benefit from some paging to cut down on browser load and fight information overload for the user, but I am not in control of the interface spec and it is not possible to have it changed. I am still looking for something faster or perhaps we will have to go back to (heaven forbid) framesets. Or maybe I will get really lucky and UI will realize that they need to change their spec. -Nick Yes, it is working for me now. I checked out the project and did not have to change any of the pom.xml files. I will let you know how my performance tests go with the new plug in. Thanks, Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13060575 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: [s2] Struts head tag KILLS ( 10s) page load time
Turns out the problem is that the autocompleter is broken for maps. Using the map example given in the documentation (http://struts.apache.org/2.x/docs/autocompleter.html) does not work: sx:autocompleter name=test label=test list={'Alabama':'AL', 'Alaska':'AK'} autoComplete=false/ However, it works when a list is given: sx:autocompleter name=test label=test list={'AL', 'AK'} autoComplete=false/ -Ben chengas123 wrote: Converting the tags to use the new library wasn't very hard except that I can't seem to get the new tags to work. I turned the debugging on in the head tag and the only debug message I got was DEBUG: please consider using a mimetype of text/json-comment-filtered to avoid potential security issues with JSON endpoints. I've placed the relevant code from my .jsp below. Is there anything I forgot when converting to 2.1 besides the steps Nicholas mentioned? I do see my action being called when I type in the autocompleter box. If I manually visit the URL I am given the following JSON: {1:Internet Services} %@ taglib prefix=sx uri=/struts-dojo-tags % sx:head cache=true debug=true / sx:autocompleter label=Department forceValidOption=true cssStyle=width:132px; height:18px; border:1px solid #7B9EBD name=department required=true href=%{departmentList} loadOnTextChange=true showDownArrow=false searchType=substring / Thanks, Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13064915 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
OGNL's anonymous map creation uses the '#' character - http://www.ognl.org/2.6.9/Documentation/html/LanguageGuide/collectionConstruction.html#mapConstruction But, if your servlet container uses the Unified EL, then you'll have to escape the '#', So, in short try this - sx:autocompleter name=test label=test list=\#{'Alabama':'AL', 'Alaska':'AK'} autoComplete=false/ Looking at what you were trying makes me think that you were confused by the JSON string. It appears that there isn't mention of using a Map for the list= attrib, but I assume that it acts the same as it did in 2.0.x -W On 10/5/07, chengas123 [EMAIL PROTECTED] wrote: Turns out the problem is that the autocompleter is broken for maps. Using the map example given in the documentation (http://struts.apache.org/2.x/docs/autocompleter.html) does not work: sx:autocompleter name=test label=test list={'Alabama':'AL', 'Alaska':'AK'} autoComplete=false/ However, it works when a list is given: sx:autocompleter name=test label=test list={'AL', 'AK'} autoComplete=false/ -Ben chengas123 wrote: Converting the tags to use the new library wasn't very hard except that I can't seem to get the new tags to work. I turned the debugging on in the head tag and the only debug message I got was DEBUG: please consider using a mimetype of text/json-comment-filtered to avoid potential security issues with JSON endpoints. I've placed the relevant code from my .jsp below. Is there anything I forgot when converting to 2.1 besides the steps Nicholas mentioned? I do see my action being called when I type in the autocompleter box. If I manually visit the URL I am given the following JSON: {1:Internet Services} %@ taglib prefix=sx uri=/struts-dojo-tags % sx:head cache=true debug=true / sx:autocompleter label=Department forceValidOption=true cssStyle=width:132px; height:18px; border:1px solid #7B9EBD name=department required=true href=%{departmentList} loadOnTextChange=true showDownArrow=false searchType=substring / Thanks, Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13064915 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Wesley Wannemacher President, Head Engineer/Consultant WanTii, Inc. http://www.wantii.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
Adding the pound sign did work for me in the hardcoded example sx:autocompleter name=test label=test list=#{'Alabama':'AL', 'Alaska':'AK'} autoComplete=false/ Will my action need to add a pound sign as well or is that only because I was using list instead of href? Right now my action is returning {1:Internet Services}, which works in 2.0.9. This is what is returned by the json plugin. Wes Wannemacher wrote: OGNL's anonymous map creation uses the '#' character Looking at what you were trying makes me think that you were confused by the JSON string. It appears that there isn't mention of using a Map for the list= attrib, but I assume that it acts the same as it did in 2.0.x -W chengas123 wrote: Converting the tags to use the new library wasn't very hard except that I can't seem to get the new tags to work. I turned the debugging on in the head tag and the only debug message I got was DEBUG: please consider using a mimetype of text/json-comment-filtered to avoid potential security issues with JSON endpoints. I've placed the relevant code from my .jsp below. Is there anything I forgot when converting to 2.1 besides the steps Nicholas mentioned? I do see my action being called when I type in the autocompleter box. If I manually visit the URL I am given the following JSON: {1:Internet Services} %@ taglib prefix=sx uri=/struts-dojo-tags % sx:head cache=true debug=true / sx:autocompleter label=Department forceValidOption=true cssStyle=width:132px; height:18px; border:1px solid #7B9EBD name=department required=true href=%{departmentList} loadOnTextChange=true showDownArrow=false searchType=substring / Thanks, Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13064915 Sent from the Struts - User mailing list archive at Nabble.com. -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13065892 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
I double check this, and it seems to be working fine, as Wes mentioned you need to escape # or use something like: sx:autocompleter name=state list=[EMAIL PROTECTED]@{'AL':'Alabama'}/ One think to keep in mind is, when you build the json, the key and the values are in the wrong order. So it would be: { Alabama : AL } instead of : { Al : Alabama } I know it is confusing, but we inherited that from Dojo and changing it would break backward compatibility. regards musachy On 10/5/07, Wes Wannemacher [EMAIL PROTECTED] wrote: OGNL's anonymous map creation uses the '#' character - http://www.ognl.org/2.6.9/Documentation/html/LanguageGuide/collectionConstruction.html#mapConstruction But, if your servlet container uses the Unified EL, then you'll have to escape the '#', So, in short try this - sx:autocompleter name=test label=test list=\#{'Alabama':'AL', 'Alaska':'AK'} autoComplete=false/ Looking at what you were trying makes me think that you were confused by the JSON string. It appears that there isn't mention of using a Map for the list= attrib, but I assume that it acts the same as it did in 2.0.x -W On 10/5/07, chengas123 [EMAIL PROTECTED] wrote: Turns out the problem is that the autocompleter is broken for maps. Using the map example given in the documentation (http://struts.apache.org/2.x/docs/autocompleter.html) does not work: sx:autocompleter name=test label=test list={'Alabama':'AL', 'Alaska':'AK'} autoComplete=false/ However, it works when a list is given: sx:autocompleter name=test label=test list={'AL', 'AK'} autoComplete=false/ -Ben chengas123 wrote: Converting the tags to use the new library wasn't very hard except that I can't seem to get the new tags to work. I turned the debugging on in the head tag and the only debug message I got was DEBUG: please consider using a mimetype of text/json-comment-filtered to avoid potential security issues with JSON endpoints. I've placed the relevant code from my .jsp below. Is there anything I forgot when converting to 2.1 besides the steps Nicholas mentioned? I do see my action being called when I type in the autocompleter box. If I manually visit the URL I am given the following JSON: {1:Internet Services} %@ taglib prefix=sx uri=/struts-dojo-tags % sx:head cache=true debug=true / sx:autocompleter label=Department forceValidOption=true cssStyle=width:132px; height:18px; border:1px solid #7B9EBD name=department required=true href=%{departmentList} loadOnTextChange=true showDownArrow=false searchType=substring / Thanks, Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13064915 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Wesley Wannemacher President, Head Engineer/Consultant WanTii, Inc. http://www.wantii.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Hey you! Would you help me to carry the stone? Pink Floyd - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
There is probably very little difference between the nightly build and trunk, I have found it's pretty easy to just build from trunk. If you don't have them already, get subversion and maven (both small downloads) and build it yourself. Follow the instructions from this thread - http://www.nabble.com/struts-2.1-beta-tf4509951.html#a12880737 You'll have your own xwork and struts2 pretty quickly. -Wes On 10/4/07, chengas123 [EMAIL PROTECTED] wrote: Thank you for the suggestion, but unfortunately I still can't figure out how to get it to build as this is my first experience with Maven. I noticed someone placed struts-2.1.0-SNAPSHOT-lib.zip in the nightlies directory which I appreciate greatly, but while it includes most of the plugins, the dojo plugin is not there. Would anyone who's familiar with the nightly build process mind taking a look to see if the dojo build could be included? Thanks, Ben -- Wesley Wannemacher President, Head Engineer/Consultant WanTii, Inc. http://www.wantii.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
Thank you for the suggestion, but unfortunately I still can't figure out how to get it to build as this is my first experience with Maven. I noticed someone placed struts-2.1.0-SNAPSHOT-lib.zip in the nightlies directory which I appreciate greatly, but while it includes most of the plugins, the dojo plugin is not there. Would anyone who's familiar with the nightly build process mind taking a look to see if the dojo build could be included? Thanks, Ben newton.dave wrote: I don't know enough about Maven to be able to help you much, but it may be as simple as clearing your repo cache (or whatever it's called). I am building from trunk with the below change w/o any difficulty, at least as of about a week ago. --- chengas123 [EMAIL PROTECTED] wrote: If this is a known issue, why doesn't someone commit the change? I understand this is the development branch, but it's a pretty critical issue to not be able to build the project. Among other things, it has to be a deterrent in attracting new developers. If I make that change I get: [WARNING] Unable to load parent project from repository: Could not find the model file 'C:\struts2\..\pom.xml'. for project unknown And then later on it actually tries to compile, but gets dozens of compilation errors. The first of which is: C:\struts2\core\src\main\java\org\apache\struts2\components\Debug.java:[25,46] package com.opensymphony.xwork2.util.reflection does not exist newton.dave wrote: IIRC there is still an issue with trunk regarding the opensymphony id; it's something like xwork.opensymphony.com and needs to be just opensymphony... um... Index: core/pom.xml === --- core/pom.xml(revision 580129) +++ core/pom.xml(working copy) @@ -55,7 +55,7 @@ configuration artifactItems artifactItem - groupIdcom.opensymphony.xwork/groupId + groupIdopensymphony/groupId artifactIdxwork/artifactId version2.1-SNAPSHOT/version classifiersources/classifier @@ -289,7 +289,7 @@ dependencies dependency - groupIdcom.opensymphony.xwork/groupId +groupIdopensymphony/groupId artifactIdxwork/artifactId version2.1-SNAPSHOT/version /dependency --- chengas123 [EMAIL PROTECTED] wrote: Ok. I tried downloading from SVN, but got a build error. Maven could not find xwork-2.1-SNAPSHOT-sources.jar. I had to download it manually from maven.opensymphony.com. However, despite following the instruction maven was giving me I could not figure out how to build the project with the manual download. -Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13029359 Sent from the Struts - User mailing list archive at Nabble.com. - 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] -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13046693 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
Wes Wannemacher wrote: There is probably very little difference between the nightly build and trunk, I have found it's pretty easy to just build from trunk. If you don't have them already, get subversion and maven (both small downloads) and build it yourself. Follow the instructions from this thread - http://www.nabble.com/struts-2.1-beta-tf4509951.html#a12880737 You'll have your own xwork and struts2 pretty quickly. -Wes I was trying to build myself, but I'm afraid I can't agree that it's pretty easy. It appears the pom.xml files are broken along with who knows what else. -Ben --- chengas123 [EMAIL PROTECTED] wrote: If this is a known issue, why doesn't someone commit the change? I understand this is the development branch, but it's a pretty critical issue to not be able to build the project. Among other things, it has to be a deterrent in attracting new developers. If I make that change I get: [WARNING] Unable to load parent project from repository: Could not find the model file 'C:\struts2\..\pom.xml'. for project unknown And then later on it actually tries to compile, but gets dozens of compilation errors. The first of which is: C:\struts2\core\src\main\java\org\apache\struts2\components\Debug.java:[25,46] package com.opensymphony.xwork2.util.reflection does not exist newton.dave wrote: IIRC there is still an issue with trunk regarding the opensymphony id; it's something like xwork.opensymphony.com and needs to be just opensymphony... um... Index: core/pom.xml === --- core/pom.xml(revision 580129) +++ core/pom.xml(working copy) @@ -55,7 +55,7 @@ configuration artifactItems artifactItem - groupIdcom.opensymphony.xwork/groupId + groupIdopensymphony/groupId artifactIdxwork/artifactId version2.1-SNAPSHOT/version classifiersources/classifier @@ -289,7 +289,7 @@ dependencies dependency - groupIdcom.opensymphony.xwork/groupId +groupIdopensymphony/groupId artifactIdxwork/artifactId version2.1-SNAPSHOT/version /dependency --- chengas123 [EMAIL PROTECTED] wrote: Ok. I tried downloading from SVN, but got a build error. Maven could not find xwork-2.1-SNAPSHOT-sources.jar. I had to download it manually from maven.opensymphony.com. However, despite following the instruction maven was giving me I could not figure out how to build the project with the manual download. -Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13029359 Sent from the Struts - User mailing list archive at Nabble.com. -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13047981 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
The dependency seems to be fine (it was broken before). On core: dependency groupIdcom.opensymphony.xwork/groupId artifactIdxwork/artifactId version2.1-SNAPSHOT/version /dependency on xwork trunk: groupIdcom.opensymphony.xwork/groupId artifactIdxwork/artifactId version2.1-SNAPSHOT/version regards musachy On 10/4/07, chengas123 [EMAIL PROTECTED] wrote: Wes Wannemacher wrote: There is probably very little difference between the nightly build and trunk, I have found it's pretty easy to just build from trunk. If you don't have them already, get subversion and maven (both small downloads) and build it yourself. Follow the instructions from this thread - http://www.nabble.com/struts-2.1-beta-tf4509951.html#a12880737 You'll have your own xwork and struts2 pretty quickly. -Wes I was trying to build myself, but I'm afraid I can't agree that it's pretty easy. It appears the pom.xml files are broken along with who knows what else. -Ben --- chengas123 [EMAIL PROTECTED] wrote: If this is a known issue, why doesn't someone commit the change? I understand this is the development branch, but it's a pretty critical issue to not be able to build the project. Among other things, it has to be a deterrent in attracting new developers. If I make that change I get: [WARNING] Unable to load parent project from repository: Could not find the model file 'C:\struts2\..\pom.xml'. for project unknown And then later on it actually tries to compile, but gets dozens of compilation errors. The first of which is: C:\struts2\core\src\main\java\org\apache\struts2\components\Debug.java:[25,46] package com.opensymphony.xwork2.util.reflection does not exist newton.dave wrote: IIRC there is still an issue with trunk regarding the opensymphony id; it's something like xwork.opensymphony.com and needs to be just opensymphony... um... Index: core/pom.xml === --- core/pom.xml(revision 580129) +++ core/pom.xml(working copy) @@ -55,7 +55,7 @@ configuration artifactItems artifactItem - groupIdcom.opensymphony.xwork/groupId + groupIdopensymphony/groupId artifactIdxwork/artifactId version2.1-SNAPSHOT/version classifiersources/classifier @@ -289,7 +289,7 @@ dependencies dependency - groupIdcom.opensymphony.xwork/groupId +groupIdopensymphony/groupId artifactIdxwork/artifactId version2.1-SNAPSHOT/version /dependency --- chengas123 [EMAIL PROTECTED] wrote: Ok. I tried downloading from SVN, but got a build error. Maven could not find xwork-2.1-SNAPSHOT-sources.jar. I had to download it manually from maven.opensymphony.com. However, despite following the instruction maven was giving me I could not figure out how to build the project with the manual download. -Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13029359 Sent from the Struts - User mailing list archive at Nabble.com. -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13047981 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Hey you! Would you help me to carry the stone? Pink Floyd - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
On 10/4/07, chengas123 [EMAIL PROTECTED] wrote: Wes Wannemacher wrote: There is probably very little difference between the nightly build and trunk, I have found it's pretty easy to just build from trunk. If you don't have them already, get subversion and maven (both small downloads) and build it yourself. Follow the instructions from this thread - http://www.nabble.com/struts-2.1-beta-tf4509951.html#a12880737 You'll have your own xwork and struts2 pretty quickly. -Wes I was trying to build myself, but I'm afraid I can't agree that it's pretty easy. It appears the pom.xml files are broken along with who knows what else. -Ben You didn't follow the directions in the link. If you build xwork, the struts2 pom will find it in it's local repository. I just went through the exact process about an hour ago to get a good copy. -W -- Wesley Wannemacher President, Head Engineer/Consultant WanTii, Inc. http://www.wantii.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
--- chengas123 wrote: I was trying to build myself, but I'm afraid I can't agree that it's pretty easy. It appears the pom.xml files are broken along with who knows what else. As I said, aside from the XWork pom.xml issue I found building trunk was very straight-forward. Perhaps if you re-post the specific errors you're having and what specific steps you've already taken someone can lend a hand. d. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
Yes, it is working for me now. I checked out the project and did not have to change any of the pom.xml files. I will let you know how my performance tests go with the new plug in. Thanks, Ben Musachy Barroso wrote: The dependency seems to be fine (it was broken before). On core: dependency groupIdcom.opensymphony.xwork/groupId artifactIdxwork/artifactId version2.1-SNAPSHOT/version /dependency on xwork trunk: groupIdcom.opensymphony.xwork/groupId artifactIdxwork/artifactId version2.1-SNAPSHOT/version regards musachy -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13049126 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: [s2] Struts head tag KILLS ( 10s) page load time
One thing to keep in mind is that you will have to migrate from the old struts tags with theme=ajax to the new ajax specific struts tags. I found that the new tags were basically the same as the old ones, but I did have to go through, drop the theme, and change the tag library. It's probably something that you can automate with regular expression though. On a side note, I am in the process of migrating out of dojo for performance reasons. Even with the new caching feature, turning parseContent off, and using the tomcat native library, widget loading in the browser (especially i.e. 6, which is our target platform) is slow. Server response times are quick, but it just takes the dojo framework a long time to register a high number of widgets per page (in one case over 600 in our site). I think the sight could benefit from some paging to cut down on browser load and fight information overload for the user, but I am not in control of the interface spec and it is not possible to have it changed. I am still looking for something faster or perhaps we will have to go back to (heaven forbid) framesets. Or maybe I will get really lucky and UI will realize that they need to change their spec. -Nick -Original Message- From: chengas123 [mailto:[EMAIL PROTECTED] Sent: October 4, 2007 5:20 PM To: user@struts.apache.org Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time Yes, it is working for me now. I checked out the project and did not have to change any of the pom.xml files. I will let you know how my performance tests go with the new plug in. Thanks, Ben NOTICE OF CONFIDENTIALITY This communication including any information transmitted with it is intended only for the use of the addressees and is confidential. If you are not an intended recipient or responsible for delivering the message to an intended recipient, any review, disclosure, conversion to hard copy, dissemination, reproduction or other use of any part of this communication is strictly prohibited, as is the taking or omitting of any action in reliance upon this communication. If you receive this communication in error or without authorization please notify us immediately by return e-mail or otherwise and permanently delete the entire communication from any computer, disk drive, or other storage medium. If the above disclaimer is not properly readable, it can be found at www.td.com/legal AVERTISSEMENT DE CONFIDENTIALITE Ce courriel, ainsi que tout renseignement ci-inclus, destiné uniquement aux destinataires susmentionnés, est confidentiel. Si vous nêtes pas le destinataire prévu ou un agent responsable de la livraison de ce courriel, tout examen, divulgation, copie, impression, reproduction, distribution, ou autre utilisation dune partie de ce courriel est strictement interdit de même que toute intervention ou abstraction à cet égard. Si vous avez reçu ce message par erreur ou sans autorisation, veuillez en aviser immédiatement lexpéditeur par retour de courriel ou par un autre moyen et supprimer immédiatement cette communication entière de tout système électronique. Si l'avis de non-responsabilité ci-dessus n'est pas lisible, vous pouvez le consulter à www.td.com/francais/legale
Re: [s2] Struts head tag KILLS ( 10s) page load time
Thank you all for your responses. I apologize that mine is so delayed. I am going to try using 2.1 with the cache attribute and see what the difference is. It sounds like it should be a major improvement. I believe the problem was that it was requesting so many files and it appeared the browser waited until the previous had finished before requesting the next, so the latency was through the roof. Having only one or two files should be a huge improvement. I downloaded the http://people.apache.org/builds/struts/nightlies/2.x/ nightlies . Do I need struts2-api in addition to struts2-core? Either way, I am presented with only a blank white screen when I try to use the new libraries in places of the 2.0.9 library. Is there anything else I would need to change to use 2.1? Thanks, Ben Don Brown wrote: Oh, ok, so this is something that we can do once and every user doesn't have to do it manually for their application? Then yes, let's make the cache flag true by default. If the user wants to trim down the profile, they can, but at least they'll get way better performance out of the box. Don On 9/25/07, Musachy Barroso [EMAIL PROTECTED] wrote: The cache attribute is available on 2.1, and is documented on the head tag: http://struts.apache.org/2.x/docs/dojo-head.html We could definitely make it a default, which it isn't now. The issue to automate the custom profile build is here: https://issues.apache.org/struts/browse/WW-2131 right now I build the custom profile and upload the files by hand. Help to get this done with maven would be appreciated. musachy -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13024548 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
I found some error messages buried in my log file. It seems 2.1 is not working for me because Dojo was moved to a plugin which I do not have. Is there anyway to get a compiled version of this plugin? Or do I have to download 2.1 from source control and compile it myself? Thanks, Ben chengas123 wrote: Thank you all for your responses. I apologize that mine is so delayed. I am going to try using 2.1 with the cache attribute and see what the difference is. It sounds like it should be a major improvement. I believe the problem was that it was requesting so many files and it appeared the browser waited until the previous had finished before requesting the next, so the latency was through the roof. Having only one or two files should be a huge improvement. I downloaded the http://people.apache.org/builds/struts/nightlies/2.x/ nightlies . Do I need struts2-api in addition to struts2-core? Either way, I am presented with only a blank white screen when I try to use the new libraries in places of the 2.0.9 library. Is there anything else I would need to change to use 2.1? Thanks, Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13026612 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
I don't think it is on the snapshots. musachy On 10/3/07, chengas123 [EMAIL PROTECTED] wrote: I found some error messages buried in my log file. It seems 2.1 is not working for me because Dojo was moved to a plugin which I do not have. Is there anyway to get a compiled version of this plugin? Or do I have to download 2.1 from source control and compile it myself? Thanks, Ben chengas123 wrote: Thank you all for your responses. I apologize that mine is so delayed. I am going to try using 2.1 with the cache attribute and see what the difference is. It sounds like it should be a major improvement. I believe the problem was that it was requesting so many files and it appeared the browser waited until the previous had finished before requesting the next, so the latency was through the roof. Having only one or two files should be a huge improvement. I downloaded the http://people.apache.org/builds/struts/nightlies/2.x/ nightlies . Do I need struts2-api in addition to struts2-core? Either way, I am presented with only a blank white screen when I try to use the new libraries in places of the 2.0.9 library. Is there anything else I would need to change to use 2.1? Thanks, Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13026612 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Hey you! Would you help me to carry the stone? Pink Floyd - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
Ok. I tried downloading from SVN, but got a build error. Maven could not find xwork-2.1-SNAPSHOT-sources.jar. I had to download it manually from maven.opensymphony.com. However, despite following the instruction maven was giving me I could not figure out how to build the project with the manual download. -Ben Musachy Barroso wrote: I don't think it is on the snapshots. musachy On 10/3/07, chengas123 [EMAIL PROTECTED] wrote: I found some error messages buried in my log file. It seems 2.1 is not working for me because Dojo was moved to a plugin which I do not have. Is there anyway to get a compiled version of this plugin? Or do I have to download 2.1 from source control and compile it myself? Thanks, Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13028025 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
IIRC there is still an issue with trunk regarding the opensymphony id; it's something like xwork.opensymphony.com and needs to be just opensymphony... um... Index: core/pom.xml === --- core/pom.xml(revision 580129) +++ core/pom.xml(working copy) @@ -55,7 +55,7 @@ configuration artifactItems artifactItem - groupIdcom.opensymphony.xwork/groupId + groupIdopensymphony/groupId artifactIdxwork/artifactId version2.1-SNAPSHOT/version classifiersources/classifier @@ -289,7 +289,7 @@ dependencies dependency -groupIdcom.opensymphony.xwork/groupId +groupIdopensymphony/groupId artifactIdxwork/artifactId version2.1-SNAPSHOT/version /dependency --- chengas123 [EMAIL PROTECTED] wrote: Ok. I tried downloading from SVN, but got a build error. Maven could not find xwork-2.1-SNAPSHOT-sources.jar. I had to download it manually from maven.opensymphony.com. However, despite following the instruction maven was giving me I could not figure out how to build the project with the manual download. -Ben Musachy Barroso wrote: I don't think it is on the snapshots. musachy On 10/3/07, chengas123 [EMAIL PROTECTED] wrote: I found some error messages buried in my log file. It seems 2.1 is not working for me because Dojo was moved to a plugin which I do not have. Is there anyway to get a compiled version of this plugin? Or do I have to download 2.1 from source control and compile it myself? Thanks, Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13028025 Sent from the Struts - User mailing list archive at Nabble.com. - 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: [s2] Struts head tag KILLS ( 10s) page load time
If this is a known issue, why doesn't someone commit the change? I understand this is the development branch, but it's a pretty critical issue to not be able to build the project. Among other things, it has to be a deterrent in attracting new developers. If I make that change I get: [WARNING] Unable to load parent project from repository: Could not find the model file 'C:\struts2\..\pom.xml'. for project unknown And then later on it actually tries to compile, but gets dozens of compilation errors. The first of which is: C:\struts2\core\src\main\java\org\apache\struts2\components\Debug.java:[25,46] package com.opensymphony.xwork2.util.reflection does not exist newton.dave wrote: IIRC there is still an issue with trunk regarding the opensymphony id; it's something like xwork.opensymphony.com and needs to be just opensymphony... um... Index: core/pom.xml === --- core/pom.xml(revision 580129) +++ core/pom.xml(working copy) @@ -55,7 +55,7 @@ configuration artifactItems artifactItem - groupIdcom.opensymphony.xwork/groupId + groupIdopensymphony/groupId artifactIdxwork/artifactId version2.1-SNAPSHOT/version classifiersources/classifier @@ -289,7 +289,7 @@ dependencies dependency -groupIdcom.opensymphony.xwork/groupId +groupIdopensymphony/groupId artifactIdxwork/artifactId version2.1-SNAPSHOT/version /dependency --- chengas123 [EMAIL PROTECTED] wrote: Ok. I tried downloading from SVN, but got a build error. Maven could not find xwork-2.1-SNAPSHOT-sources.jar. I had to download it manually from maven.opensymphony.com. However, despite following the instruction maven was giving me I could not figure out how to build the project with the manual download. -Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13029359 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
I don't know enough about Maven to be able to help you much, but it may be as simple as clearing your repo cache (or whatever it's called). I am building from trunk with the below change w/o any difficulty, at least as of about a week ago. --- chengas123 [EMAIL PROTECTED] wrote: If this is a known issue, why doesn't someone commit the change? I understand this is the development branch, but it's a pretty critical issue to not be able to build the project. Among other things, it has to be a deterrent in attracting new developers. If I make that change I get: [WARNING] Unable to load parent project from repository: Could not find the model file 'C:\struts2\..\pom.xml'. for project unknown And then later on it actually tries to compile, but gets dozens of compilation errors. The first of which is: C:\struts2\core\src\main\java\org\apache\struts2\components\Debug.java:[25,46] package com.opensymphony.xwork2.util.reflection does not exist newton.dave wrote: IIRC there is still an issue with trunk regarding the opensymphony id; it's something like xwork.opensymphony.com and needs to be just opensymphony... um... Index: core/pom.xml === --- core/pom.xml(revision 580129) +++ core/pom.xml(working copy) @@ -55,7 +55,7 @@ configuration artifactItems artifactItem - groupIdcom.opensymphony.xwork/groupId + groupIdopensymphony/groupId artifactIdxwork/artifactId version2.1-SNAPSHOT/version classifiersources/classifier @@ -289,7 +289,7 @@ dependencies dependency - groupIdcom.opensymphony.xwork/groupId +groupIdopensymphony/groupId artifactIdxwork/artifactId version2.1-SNAPSHOT/version /dependency --- chengas123 [EMAIL PROTECTED] wrote: Ok. I tried downloading from SVN, but got a build error. Maven could not find xwork-2.1-SNAPSHOT-sources.jar. I had to download it manually from maven.opensymphony.com. However, despite following the instruction maven was giving me I could not figure out how to build the project with the manual download. -Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a13029359 Sent from the Struts - User mailing list archive at Nabble.com. - 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: [s2] Struts head tag KILLS ( 10s) page load time
Apparently cache is another attribute placed into djConfig array? if we take a look at latest 0.9.0 release of dojo-release-0.9.0/dojo/tests/back.html which contains sample djConfig script language=JavaScript type=text/javascript // Dojo configuration djConfig = { //debugAtAllCosts: true, //Don't normally need this in applications. isDebug: true, dojoIframeHistoryUrl: ../../resources/iframe_history.html, //for xdomain preventBackButtonFix: false, cache:true //presumably we can set our cache param here but where is it referenced??? }; /script FF maladies: This article suggests starting FF in safe mode as some FF extensions cause maladies with DOM parser http://manual.dojotoolkit.org/WikiHome/DojoDotBook/Book122 the article also suggests bypassing eval with dojo.writeIncludes() with DebugAtAllCosts=true where Each of the required javascript filenames is added into a list of pending files that need to be loaded (the list is in order so that dependent files are loaded in the correct order). script tags are appended with src attributes set to the js files that need to be loaded. The script tags cause the files to be loaded by the browser: as in this example.. dojo.require(dojo.myModule); dojo.hostenv.writeIncludes(); // no eval will happen instead dependent files will loaded in 'correct order' Seems to suggest bypassing eval to accelerate loading.. Suggestions for JS Tools? M-- - Original Message - From: James Holmes [EMAIL PROTECTED] To: 'Struts Users Mailing List' user@struts.apache.org Cc: 'Struts Developers List' [EMAIL PROTECTED] Sent: Monday, September 24, 2007 9:50 PM Subject: RE: [s2] Struts head tag KILLS ( 10s) page load time +1 -Original Message- From: Don Brown [mailto:[EMAIL PROTECTED] Sent: Monday, September 24, 2007 9:39 PM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time Hmm...more info can be found here: http://dojo.jot.com/FAQ#Performance I wonder if we should require the cache=true flag when not in devmode, or at least throw all sorts of warnings in the logs. We should do everything possible to help the user avoid huge performance problems, and I'd certainly classify this as one of them. Don On 9/24/07, Musachy Barroso [EMAIL PROTECTED] wrote: It is a dojo/browser thing. All we can do is done already, if you set cache=true Struts 2 will use a custom build where only one file (which will be cached) will be used. musachy On 9/24/07, Don Brown [EMAIL PROTECTED] wrote: Oh damn, why is that? Cache is critical here. Don On 9/24/07, Musachy Barroso [EMAIL PROTECTED] wrote: When a file is loaded using dojo.require, it is not cached by the browser. musachy On 9/23/07, Jason Wyatt [EMAIL PROTECTED] wrote: Hi Martin, Yes, that's right. The dojo requires seemed unexpectedly slow during our tests. I was using Firefox's Firebug to check page load times. From memory, it looked like the dojo includes were being requested sequentially and seemed to give substantial page loading overhead (2s) even if the dojo .js files were cached. I never fully understood why there was a large overhead although the dojo files were supposedly cached. It might have been a quirk with firebug and dojo requires, or maybe the requires routine itself is slow, when called 30+ times. About 5 dojo files were consistently returning not found as well, which may not have helped the load times. Removing as much dojo stuff as I could, and upgrading from Struts 2.0.8 to 2.0.9 has solved our page load time issues. Regards Jason -Original Message- From: Martin Gainty [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 11:41 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time Hi Jason- so by attentuating dojo includes you decreased initial load time for dojo with the beneficial side effect of faster response to the browser? Thanks/ Martin-- - Original Message - From: Jason Wyatt [EMAIL PROTECTED] To: 'Struts Users Mailing List' user@struts.apache.org Sent: Thursday, September 20, 2007 9:09 PM Subject: RE: [s2] Struts head tag KILLS ( 10s) page load time I had the same issue... We use the ajax tabbed panel but no other dojo widgets, but the s:head theme=ajax tag had dojo requiring all of the dojo widget library. This was causing our page to fire off 70+ requests when loading. As our app needs to be accessed up to a thousand km away, tests showed initial load times of over 10s because of latency. I modified web\template\ajax\head.ftl to include a custom web\hack\ajax\dojoRequire.js that had the minimum dojo
Re: [s2] Struts head tag KILLS ( 10s) page load time
It is a dojo/browser thing. All we can do is done already, if you set cache=true Struts 2 will use a custom build where only one file (which will be cached) will be used. musachy On 9/24/07, Don Brown [EMAIL PROTECTED] wrote: Oh damn, why is that? Cache is critical here. Don On 9/24/07, Musachy Barroso [EMAIL PROTECTED] wrote: When a file is loaded using dojo.require, it is not cached by the browser. musachy On 9/23/07, Jason Wyatt [EMAIL PROTECTED] wrote: Hi Martin, Yes, that's right. The dojo requires seemed unexpectedly slow during our tests. I was using Firefox's Firebug to check page load times. From memory, it looked like the dojo includes were being requested sequentially and seemed to give substantial page loading overhead (2s) even if the dojo .js files were cached. I never fully understood why there was a large overhead although the dojo files were supposedly cached. It might have been a quirk with firebug and dojo requires, or maybe the requires routine itself is slow, when called 30+ times. About 5 dojo files were consistently returning not found as well, which may not have helped the load times. Removing as much dojo stuff as I could, and upgrading from Struts 2.0.8 to 2.0.9 has solved our page load time issues. Regards Jason -Original Message- From: Martin Gainty [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 11:41 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time Hi Jason- so by attentuating dojo includes you decreased initial load time for dojo with the beneficial side effect of faster response to the browser? Thanks/ Martin-- - Original Message - From: Jason Wyatt [EMAIL PROTECTED] To: 'Struts Users Mailing List' user@struts.apache.org Sent: Thursday, September 20, 2007 9:09 PM Subject: RE: [s2] Struts head tag KILLS ( 10s) page load time I had the same issue... We use the ajax tabbed panel but no other dojo widgets, but the s:head theme=ajax tag had dojo requiring all of the dojo widget library. This was causing our page to fire off 70+ requests when loading. As our app needs to be accessed up to a thousand km away, tests showed initial load times of over 10s because of latency. I modified web\template\ajax\head.ftl to include a custom web\hack\ajax\dojoRequire.js that had the minimum dojo includes for the tabbed panels. This managed to get the number of requests down to around 30, mostly our own images and scripts, which gave acceptable load times. Eg. web\template\ajax\head.ftl: #include /${parameters.templateDir}/${themeProperties.parent}/head.ftl / script type=text/javascript src=@s.url value='/hack/ajax/dojoRequire.js' includeParams='none' encode='false' //script script type=text/javascript src=@s.url value='/struts/CommonFunctions.js' includeParams='none' encode='false'//script web\hack\ajax\dojoRequire.js: dojo.require(dojo.io.BrowserIO); dojo.require(dojo.event.topic); dojo.hostenv.setModulePrefix('struts', 'struts'); //dojo.require('dojo.widget.*'); dojo.widget.manager.registerWidgetPackage('struts.widget'); dojo.require(struts.widget.Bind); dojo.require(struts.widget.BindDiv); //dojo.require(struts.widget.BindAnchor); //dojo.require(struts.widget.ComboBox); //dojo.require(struts.widget.StrutsTimePicker) //dojo.require(dojo.widget.Editor2); //dojo.hostenv.writeIncludes(); // not needed, but allows the Venkman debugger to work with the includes Hope this helps, regards Jason - Falun Dafa Truth - Compassion - Forbearance A mind body practice under persecution in China http://www.faluninfo.net -Original Message- From: Frank W. Zammetti [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 8:09 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time If Dojo is being used for AJAX in this case, that's my guess. I know from experience that Dojo, can issue a TON of requests even if you think your only loading a small portion of it. Assuming this guess is correct, Musachy, does S2 use a custom build of Dojo? If not, that might be worth considering. Frank -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http
RE: [s2] Struts head tag KILLS ( 10s) page load time
That's sounds great Musachy, where would I put this setting? Also, what version of Struts is this available in? It would be great if it was mentioned in the Performance Tuning page. http://cwiki.apache.org/WW/performance-tuning.html Thanks, Jason -Original Message- From: Musachy Barroso [mailto:[EMAIL PROTECTED] Sent: Monday, 24 September 2007 11:09 PM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time It is a dojo/browser thing. All we can do is done already, if you set cache=true Struts 2 will use a custom build where only one file (which will be cached) will be used. musachy On 9/24/07, Don Brown [EMAIL PROTECTED] wrote: Oh damn, why is that? Cache is critical here. Don On 9/24/07, Musachy Barroso [EMAIL PROTECTED] wrote: When a file is loaded using dojo.require, it is not cached by the browser. musachy On 9/23/07, Jason Wyatt [EMAIL PROTECTED] wrote: Hi Martin, Yes, that's right. The dojo requires seemed unexpectedly slow during our tests. I was using Firefox's Firebug to check page load times. From memory, it looked like the dojo includes were being requested sequentially and seemed to give substantial page loading overhead (2s) even if the dojo .js files were cached. I never fully understood why there was a large overhead although the dojo files were supposedly cached. It might have been a quirk with firebug and dojo requires, or maybe the requires routine itself is slow, when called 30+ times. About 5 dojo files were consistently returning not found as well, which may not have helped the load times. Removing as much dojo stuff as I could, and upgrading from Struts 2.0.8 to 2.0.9 has solved our page load time issues. Regards Jason -Original Message- From: Martin Gainty [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 11:41 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time Hi Jason- so by attentuating dojo includes you decreased initial load time for dojo with the beneficial side effect of faster response to the browser? Thanks/ Martin-- - Original Message - From: Jason Wyatt [EMAIL PROTECTED] To: 'Struts Users Mailing List' user@struts.apache.org Sent: Thursday, September 20, 2007 9:09 PM Subject: RE: [s2] Struts head tag KILLS ( 10s) page load time I had the same issue... We use the ajax tabbed panel but no other dojo widgets, but the s:head theme=ajax tag had dojo requiring all of the dojo widget library. This was causing our page to fire off 70+ requests when loading. As our app needs to be accessed up to a thousand km away, tests showed initial load times of over 10s because of latency. I modified web\template\ajax\head.ftl to include a custom web\hack\ajax\dojoRequire.js that had the minimum dojo includes for the tabbed panels. This managed to get the number of requests down to around 30, mostly our own images and scripts, which gave acceptable load times. Eg. web\template\ajax\head.ftl: #include /${parameters.templateDir}/${themeProperties.parent}/head.ftl / script type=text/javascript src=@s.url value='/hack/ajax/dojoRequire.js' includeParams='none' encode='false' //script script type=text/javascript src=@s.url value='/struts/CommonFunctions.js' includeParams='none' encode='false'//script web\hack\ajax\dojoRequire.js: dojo.require(dojo.io.BrowserIO); dojo.require(dojo.event.topic); dojo.hostenv.setModulePrefix('struts', 'struts'); //dojo.require('dojo.widget.*'); dojo.widget.manager.registerWidgetPackage('struts.widget'); dojo.require(struts.widget.Bind); dojo.require(struts.widget.BindDiv); //dojo.require(struts.widget.BindAnchor); //dojo.require(struts.widget.ComboBox); //dojo.require(struts.widget.StrutsTimePicker) //dojo.require(dojo.widget.Editor2); //dojo.hostenv.writeIncludes(); // not needed, but allows the Venkman debugger to work with the includes Hope this helps, regards Jason - Falun Dafa Truth - Compassion - Forbearance A mind body practice under persecution in China http://www.faluninfo.net -Original Message- From: Frank W. Zammetti [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 8:09 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time If Dojo is being used for AJAX in this case, that's my guess. I know from experience that Dojo, can issue a TON of requests even if you think your only loading a small portion of it. Assuming this guess is correct, Musachy, does S2 use a custom build of Dojo
Re: [s2] Struts head tag KILLS ( 10s) page load time
Hmm...more info can be found here: http://dojo.jot.com/FAQ#Performance I wonder if we should require the cache=true flag when not in devmode, or at least throw all sorts of warnings in the logs. We should do everything possible to help the user avoid huge performance problems, and I'd certainly classify this as one of them. Don On 9/24/07, Musachy Barroso [EMAIL PROTECTED] wrote: It is a dojo/browser thing. All we can do is done already, if you set cache=true Struts 2 will use a custom build where only one file (which will be cached) will be used. musachy On 9/24/07, Don Brown [EMAIL PROTECTED] wrote: Oh damn, why is that? Cache is critical here. Don On 9/24/07, Musachy Barroso [EMAIL PROTECTED] wrote: When a file is loaded using dojo.require, it is not cached by the browser. musachy On 9/23/07, Jason Wyatt [EMAIL PROTECTED] wrote: Hi Martin, Yes, that's right. The dojo requires seemed unexpectedly slow during our tests. I was using Firefox's Firebug to check page load times. From memory, it looked like the dojo includes were being requested sequentially and seemed to give substantial page loading overhead (2s) even if the dojo .js files were cached. I never fully understood why there was a large overhead although the dojo files were supposedly cached. It might have been a quirk with firebug and dojo requires, or maybe the requires routine itself is slow, when called 30+ times. About 5 dojo files were consistently returning not found as well, which may not have helped the load times. Removing as much dojo stuff as I could, and upgrading from Struts 2.0.8 to 2.0.9 has solved our page load time issues. Regards Jason -Original Message- From: Martin Gainty [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 11:41 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time Hi Jason- so by attentuating dojo includes you decreased initial load time for dojo with the beneficial side effect of faster response to the browser? Thanks/ Martin-- - Original Message - From: Jason Wyatt [EMAIL PROTECTED] To: 'Struts Users Mailing List' user@struts.apache.org Sent: Thursday, September 20, 2007 9:09 PM Subject: RE: [s2] Struts head tag KILLS ( 10s) page load time I had the same issue... We use the ajax tabbed panel but no other dojo widgets, but the s:head theme=ajax tag had dojo requiring all of the dojo widget library. This was causing our page to fire off 70+ requests when loading. As our app needs to be accessed up to a thousand km away, tests showed initial load times of over 10s because of latency. I modified web\template\ajax\head.ftl to include a custom web\hack\ajax\dojoRequire.js that had the minimum dojo includes for the tabbed panels. This managed to get the number of requests down to around 30, mostly our own images and scripts, which gave acceptable load times. Eg. web\template\ajax\head.ftl: #include /${parameters.templateDir}/${themeProperties.parent}/head.ftl / script type=text/javascript src=@s.url value='/hack/ajax/dojoRequire.js' includeParams='none' encode='false' //script script type=text/javascript src=@s.url value='/struts/CommonFunctions.js' includeParams='none' encode='false'//script web\hack\ajax\dojoRequire.js: dojo.require(dojo.io.BrowserIO); dojo.require(dojo.event.topic); dojo.hostenv.setModulePrefix('struts', 'struts'); //dojo.require('dojo.widget.*'); dojo.widget.manager.registerWidgetPackage('struts.widget'); dojo.require(struts.widget.Bind); dojo.require(struts.widget.BindDiv); //dojo.require(struts.widget.BindAnchor); //dojo.require(struts.widget.ComboBox); //dojo.require(struts.widget.StrutsTimePicker) //dojo.require(dojo.widget.Editor2); //dojo.hostenv.writeIncludes(); // not needed, but allows the Venkman debugger to work with the includes Hope this helps, regards Jason - Falun Dafa Truth - Compassion - Forbearance A mind body practice under persecution in China http://www.faluninfo.net -Original Message- From: Frank W. Zammetti [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 8:09 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time If Dojo is being used for AJAX in this case, that's my guess. I know from experience that Dojo, can issue a TON of requests even if you think your only loading
Re: [s2] Struts head tag KILLS ( 10s) page load time
Where is this cache=true flag documented? Does it require a manually-build dojo file? If so, could we automate that somehow? We could do something like keep track of what dojo tags have been used, then build a new single dojo file as needed. Don On 9/24/07, Musachy Barroso [EMAIL PROTECTED] wrote: It is a dojo/browser thing. All we can do is done already, if you set cache=true Struts 2 will use a custom build where only one file (which will be cached) will be used. musachy On 9/24/07, Don Brown [EMAIL PROTECTED] wrote: Oh damn, why is that? Cache is critical here. Don On 9/24/07, Musachy Barroso [EMAIL PROTECTED] wrote: When a file is loaded using dojo.require, it is not cached by the browser. musachy On 9/23/07, Jason Wyatt [EMAIL PROTECTED] wrote: Hi Martin, Yes, that's right. The dojo requires seemed unexpectedly slow during our tests. I was using Firefox's Firebug to check page load times. From memory, it looked like the dojo includes were being requested sequentially and seemed to give substantial page loading overhead (2s) even if the dojo .js files were cached. I never fully understood why there was a large overhead although the dojo files were supposedly cached. It might have been a quirk with firebug and dojo requires, or maybe the requires routine itself is slow, when called 30+ times. About 5 dojo files were consistently returning not found as well, which may not have helped the load times. Removing as much dojo stuff as I could, and upgrading from Struts 2.0.8 to 2.0.9 has solved our page load time issues. Regards Jason -Original Message- From: Martin Gainty [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 11:41 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time Hi Jason- so by attentuating dojo includes you decreased initial load time for dojo with the beneficial side effect of faster response to the browser? Thanks/ Martin-- - Original Message - From: Jason Wyatt [EMAIL PROTECTED] To: 'Struts Users Mailing List' user@struts.apache.org Sent: Thursday, September 20, 2007 9:09 PM Subject: RE: [s2] Struts head tag KILLS ( 10s) page load time I had the same issue... We use the ajax tabbed panel but no other dojo widgets, but the s:head theme=ajax tag had dojo requiring all of the dojo widget library. This was causing our page to fire off 70+ requests when loading. As our app needs to be accessed up to a thousand km away, tests showed initial load times of over 10s because of latency. I modified web\template\ajax\head.ftl to include a custom web\hack\ajax\dojoRequire.js that had the minimum dojo includes for the tabbed panels. This managed to get the number of requests down to around 30, mostly our own images and scripts, which gave acceptable load times. Eg. web\template\ajax\head.ftl: #include /${parameters.templateDir}/${themeProperties.parent}/head.ftl / script type=text/javascript src=@s.url value='/hack/ajax/dojoRequire.js' includeParams='none' encode='false' //script script type=text/javascript src=@s.url value='/struts/CommonFunctions.js' includeParams='none' encode='false'//script web\hack\ajax\dojoRequire.js: dojo.require(dojo.io.BrowserIO); dojo.require(dojo.event.topic); dojo.hostenv.setModulePrefix('struts', 'struts'); //dojo.require('dojo.widget.*'); dojo.widget.manager.registerWidgetPackage('struts.widget'); dojo.require(struts.widget.Bind); dojo.require(struts.widget.BindDiv); //dojo.require(struts.widget.BindAnchor); //dojo.require(struts.widget.ComboBox); //dojo.require(struts.widget.StrutsTimePicker) //dojo.require(dojo.widget.Editor2); //dojo.hostenv.writeIncludes(); // not needed, but allows the Venkman debugger to work with the includes Hope this helps, regards Jason - Falun Dafa Truth - Compassion - Forbearance A mind body practice under persecution in China http://www.faluninfo.net -Original Message- From: Frank W. Zammetti [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 8:09 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time If Dojo is being used for AJAX in this case, that's my guess. I know from experience that Dojo, can issue a TON of requests even if you think your only loading a small portion of it. Assuming this guess is correct, Musachy, does S2 use
RE: [s2] Struts head tag KILLS ( 10s) page load time
+1 -Original Message- From: Don Brown [mailto:[EMAIL PROTECTED] Sent: Monday, September 24, 2007 9:39 PM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time Hmm...more info can be found here: http://dojo.jot.com/FAQ#Performance I wonder if we should require the cache=true flag when not in devmode, or at least throw all sorts of warnings in the logs. We should do everything possible to help the user avoid huge performance problems, and I'd certainly classify this as one of them. Don On 9/24/07, Musachy Barroso [EMAIL PROTECTED] wrote: It is a dojo/browser thing. All we can do is done already, if you set cache=true Struts 2 will use a custom build where only one file (which will be cached) will be used. musachy On 9/24/07, Don Brown [EMAIL PROTECTED] wrote: Oh damn, why is that? Cache is critical here. Don On 9/24/07, Musachy Barroso [EMAIL PROTECTED] wrote: When a file is loaded using dojo.require, it is not cached by the browser. musachy On 9/23/07, Jason Wyatt [EMAIL PROTECTED] wrote: Hi Martin, Yes, that's right. The dojo requires seemed unexpectedly slow during our tests. I was using Firefox's Firebug to check page load times. From memory, it looked like the dojo includes were being requested sequentially and seemed to give substantial page loading overhead (2s) even if the dojo .js files were cached. I never fully understood why there was a large overhead although the dojo files were supposedly cached. It might have been a quirk with firebug and dojo requires, or maybe the requires routine itself is slow, when called 30+ times. About 5 dojo files were consistently returning not found as well, which may not have helped the load times. Removing as much dojo stuff as I could, and upgrading from Struts 2.0.8 to 2.0.9 has solved our page load time issues. Regards Jason -Original Message- From: Martin Gainty [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 11:41 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time Hi Jason- so by attentuating dojo includes you decreased initial load time for dojo with the beneficial side effect of faster response to the browser? Thanks/ Martin-- - Original Message - From: Jason Wyatt [EMAIL PROTECTED] To: 'Struts Users Mailing List' user@struts.apache.org Sent: Thursday, September 20, 2007 9:09 PM Subject: RE: [s2] Struts head tag KILLS ( 10s) page load time I had the same issue... We use the ajax tabbed panel but no other dojo widgets, but the s:head theme=ajax tag had dojo requiring all of the dojo widget library. This was causing our page to fire off 70+ requests when loading. As our app needs to be accessed up to a thousand km away, tests showed initial load times of over 10s because of latency. I modified web\template\ajax\head.ftl to include a custom web\hack\ajax\dojoRequire.js that had the minimum dojo includes for the tabbed panels. This managed to get the number of requests down to around 30, mostly our own images and scripts, which gave acceptable load times. Eg. web\template\ajax\head.ftl: #include /${parameters.templateDir}/${themeProperties.parent}/head.ftl / script type=text/javascript src=@s.url value='/hack/ajax/dojoRequire.js' includeParams='none' encode='false' //script script type=text/javascript src=@s.url value='/struts/CommonFunctions.js' includeParams='none' encode='false'//script web\hack\ajax\dojoRequire.js: dojo.require(dojo.io.BrowserIO); dojo.require(dojo.event.topic); dojo.hostenv.setModulePrefix('struts', 'struts'); //dojo.require('dojo.widget.*'); dojo.widget.manager.registerWidgetPackage('struts.widget'); dojo.require(struts.widget.Bind); dojo.require(struts.widget.BindDiv); //dojo.require(struts.widget.BindAnchor); //dojo.require(struts.widget.ComboBox); //dojo.require(struts.widget.StrutsTimePicker) //dojo.require(dojo.widget.Editor2); //dojo.hostenv.writeIncludes(); // not needed, but allows the Venkman debugger to work with the includes Hope this helps, regards Jason - Falun Dafa Truth - Compassion - Forbearance A mind body practice under persecution in China http://www.faluninfo.net -Original Message- From: Frank W. Zammetti [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 8:09 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time If Dojo is being used for AJAX in this case, that's my
Re: [s2] Struts head tag KILLS ( 10s) page load time
The cache attribute is available on 2.1, and is documented on the head tag: http://struts.apache.org/2.x/docs/dojo-head.html We could definitely make it a default, which it isn't now. The issue to automate the custom profile build is here: https://issues.apache.org/struts/browse/WW-2131 right now I build the custom profile and upload the files by hand. Help to get this done with maven would be appreciated. musachy On 9/24/07, Don Brown [EMAIL PROTECTED] wrote: Where is this cache=true flag documented? Does it require a manually-build dojo file? If so, could we automate that somehow? We could do something like keep track of what dojo tags have been used, then build a new single dojo file as needed. Don On 9/24/07, Musachy Barroso [EMAIL PROTECTED] wrote: It is a dojo/browser thing. All we can do is done already, if you set cache=true Struts 2 will use a custom build where only one file (which will be cached) will be used. musachy On 9/24/07, Don Brown [EMAIL PROTECTED] wrote: Oh damn, why is that? Cache is critical here. Don On 9/24/07, Musachy Barroso [EMAIL PROTECTED] wrote: When a file is loaded using dojo.require, it is not cached by the browser. musachy On 9/23/07, Jason Wyatt [EMAIL PROTECTED] wrote: Hi Martin, Yes, that's right. The dojo requires seemed unexpectedly slow during our tests. I was using Firefox's Firebug to check page load times. From memory, it looked like the dojo includes were being requested sequentially and seemed to give substantial page loading overhead (2s) even if the dojo .js files were cached. I never fully understood why there was a large overhead although the dojo files were supposedly cached. It might have been a quirk with firebug and dojo requires, or maybe the requires routine itself is slow, when called 30+ times. About 5 dojo files were consistently returning not found as well, which may not have helped the load times. Removing as much dojo stuff as I could, and upgrading from Struts 2.0.8 to 2.0.9 has solved our page load time issues. Regards Jason -Original Message- From: Martin Gainty [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 11:41 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time Hi Jason- so by attentuating dojo includes you decreased initial load time for dojo with the beneficial side effect of faster response to the browser? Thanks/ Martin-- - Original Message - From: Jason Wyatt [EMAIL PROTECTED] To: 'Struts Users Mailing List' user@struts.apache.org Sent: Thursday, September 20, 2007 9:09 PM Subject: RE: [s2] Struts head tag KILLS ( 10s) page load time I had the same issue... We use the ajax tabbed panel but no other dojo widgets, but the s:head theme=ajax tag had dojo requiring all of the dojo widget library. This was causing our page to fire off 70+ requests when loading. As our app needs to be accessed up to a thousand km away, tests showed initial load times of over 10s because of latency. I modified web\template\ajax\head.ftl to include a custom web\hack\ajax\dojoRequire.js that had the minimum dojo includes for the tabbed panels. This managed to get the number of requests down to around 30, mostly our own images and scripts, which gave acceptable load times. Eg. web\template\ajax\head.ftl: #include /${parameters.templateDir}/${themeProperties.parent}/head.ftl / script type=text/javascript src=@s.url value='/hack/ajax/dojoRequire.js' includeParams='none' encode='false' //script script type=text/javascript src=@s.url value='/struts/CommonFunctions.js' includeParams='none' encode='false'//script web\hack\ajax\dojoRequire.js: dojo.require(dojo.io.BrowserIO); dojo.require(dojo.event.topic); dojo.hostenv.setModulePrefix('struts', 'struts'); //dojo.require('dojo.widget.*'); dojo.widget.manager.registerWidgetPackage('struts.widget'); dojo.require(struts.widget.Bind); dojo.require(struts.widget.BindDiv); //dojo.require(struts.widget.BindAnchor); //dojo.require(struts.widget.ComboBox); //dojo.require(struts.widget.StrutsTimePicker) //dojo.require(dojo.widget.Editor2); //dojo.hostenv.writeIncludes(); // not needed, but allows the Venkman debugger to work with the includes Hope this helps, regards Jason - Falun Dafa Truth - Compassion
Re: [s2] Struts head tag KILLS ( 10s) page load time
Oh, ok, so this is something that we can do once and every user doesn't have to do it manually for their application? Then yes, let's make the cache flag true by default. If the user wants to trim down the profile, they can, but at least they'll get way better performance out of the box. Don On 9/25/07, Musachy Barroso [EMAIL PROTECTED] wrote: The cache attribute is available on 2.1, and is documented on the head tag: http://struts.apache.org/2.x/docs/dojo-head.html We could definitely make it a default, which it isn't now. The issue to automate the custom profile build is here: https://issues.apache.org/struts/browse/WW-2131 right now I build the custom profile and upload the files by hand. Help to get this done with maven would be appreciated. musachy On 9/24/07, Don Brown [EMAIL PROTECTED] wrote: Where is this cache=true flag documented? Does it require a manually-build dojo file? If so, could we automate that somehow? We could do something like keep track of what dojo tags have been used, then build a new single dojo file as needed. Don On 9/24/07, Musachy Barroso [EMAIL PROTECTED] wrote: It is a dojo/browser thing. All we can do is done already, if you set cache=true Struts 2 will use a custom build where only one file (which will be cached) will be used. musachy On 9/24/07, Don Brown [EMAIL PROTECTED] wrote: Oh damn, why is that? Cache is critical here. Don On 9/24/07, Musachy Barroso [EMAIL PROTECTED] wrote: When a file is loaded using dojo.require, it is not cached by the browser. musachy On 9/23/07, Jason Wyatt [EMAIL PROTECTED] wrote: Hi Martin, Yes, that's right. The dojo requires seemed unexpectedly slow during our tests. I was using Firefox's Firebug to check page load times. From memory, it looked like the dojo includes were being requested sequentially and seemed to give substantial page loading overhead (2s) even if the dojo .js files were cached. I never fully understood why there was a large overhead although the dojo files were supposedly cached. It might have been a quirk with firebug and dojo requires, or maybe the requires routine itself is slow, when called 30+ times. About 5 dojo files were consistently returning not found as well, which may not have helped the load times. Removing as much dojo stuff as I could, and upgrading from Struts 2.0.8 to 2.0.9 has solved our page load time issues. Regards Jason -Original Message- From: Martin Gainty [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 11:41 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time Hi Jason- so by attentuating dojo includes you decreased initial load time for dojo with the beneficial side effect of faster response to the browser? Thanks/ Martin-- - Original Message - From: Jason Wyatt [EMAIL PROTECTED] To: 'Struts Users Mailing List' user@struts.apache.org Sent: Thursday, September 20, 2007 9:09 PM Subject: RE: [s2] Struts head tag KILLS ( 10s) page load time I had the same issue... We use the ajax tabbed panel but no other dojo widgets, but the s:head theme=ajax tag had dojo requiring all of the dojo widget library. This was causing our page to fire off 70+ requests when loading. As our app needs to be accessed up to a thousand km away, tests showed initial load times of over 10s because of latency. I modified web\template\ajax\head.ftl to include a custom web\hack\ajax\dojoRequire.js that had the minimum dojo includes for the tabbed panels. This managed to get the number of requests down to around 30, mostly our own images and scripts, which gave acceptable load times. Eg. web\template\ajax\head.ftl: #include /${parameters.templateDir}/${themeProperties.parent}/head.ftl / script type=text/javascript src=@s.url value='/hack/ajax/dojoRequire.js' includeParams='none' encode='false' //script script type=text/javascript src=@s.url value='/struts/CommonFunctions.js' includeParams='none' encode='false'//script web\hack\ajax\dojoRequire.js: dojo.require(dojo.io.BrowserIO); dojo.require(dojo.event.topic); dojo.hostenv.setModulePrefix('struts', 'struts'); //dojo.require('dojo.widget.*'); dojo.widget.manager.registerWidgetPackage('struts.widget'); dojo.require
RE: [s2] Struts head tag KILLS ( 10s) page load time
Hi Martin, Yes, that's right. The dojo requires seemed unexpectedly slow during our tests. I was using Firefox's Firebug to check page load times. From memory, it looked like the dojo includes were being requested sequentially and seemed to give substantial page loading overhead (2s) even if the dojo .js files were cached. I never fully understood why there was a large overhead although the dojo files were supposedly cached. It might have been a quirk with firebug and dojo requires, or maybe the requires routine itself is slow, when called 30+ times. About 5 dojo files were consistently returning not found as well, which may not have helped the load times. Removing as much dojo stuff as I could, and upgrading from Struts 2.0.8 to 2.0.9 has solved our page load time issues. Regards Jason -Original Message- From: Martin Gainty [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 11:41 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time Hi Jason- so by attentuating dojo includes you decreased initial load time for dojo with the beneficial side effect of faster response to the browser? Thanks/ Martin-- - Original Message - From: Jason Wyatt [EMAIL PROTECTED] To: 'Struts Users Mailing List' user@struts.apache.org Sent: Thursday, September 20, 2007 9:09 PM Subject: RE: [s2] Struts head tag KILLS ( 10s) page load time I had the same issue... We use the ajax tabbed panel but no other dojo widgets, but the s:head theme=ajax tag had dojo requiring all of the dojo widget library. This was causing our page to fire off 70+ requests when loading. As our app needs to be accessed up to a thousand km away, tests showed initial load times of over 10s because of latency. I modified web\template\ajax\head.ftl to include a custom web\hack\ajax\dojoRequire.js that had the minimum dojo includes for the tabbed panels. This managed to get the number of requests down to around 30, mostly our own images and scripts, which gave acceptable load times. Eg. web\template\ajax\head.ftl: #include /${parameters.templateDir}/${themeProperties.parent}/head.ftl / script type=text/javascript src=@s.url value='/hack/ajax/dojoRequire.js' includeParams='none' encode='false' //script script type=text/javascript src=@s.url value='/struts/CommonFunctions.js' includeParams='none' encode='false'//script web\hack\ajax\dojoRequire.js: dojo.require(dojo.io.BrowserIO); dojo.require(dojo.event.topic); dojo.hostenv.setModulePrefix('struts', 'struts'); //dojo.require('dojo.widget.*'); dojo.widget.manager.registerWidgetPackage('struts.widget'); dojo.require(struts.widget.Bind); dojo.require(struts.widget.BindDiv); //dojo.require(struts.widget.BindAnchor); //dojo.require(struts.widget.ComboBox); //dojo.require(struts.widget.StrutsTimePicker) //dojo.require(dojo.widget.Editor2); //dojo.hostenv.writeIncludes(); // not needed, but allows the Venkman debugger to work with the includes Hope this helps, regards Jason - Falun Dafa Truth - Compassion - Forbearance A mind body practice under persecution in China http://www.faluninfo.net -Original Message- From: Frank W. Zammetti [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 8:09 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time If Dojo is being used for AJAX in this case, that's my guess. I know from experience that Dojo, can issue a TON of requests even if you think your only loading a small portion of it. Assuming this guess is correct, Musachy, does S2 use a custom build of Dojo? If not, that might be worth considering. Frank -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! chengas123 wrote: Hi, I am working on a Struts 2 page and page load times are way too high. I tracked it down to the Struts head tag, which I have as follows: s:head theme=ajax / Without the tag, my page issues 3 requests and takes 453ms to load. With the tag, the page issues 54 requests taking 12.24s to load. Is there something I am doing wrong here? Thanks, Ben - 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
Re: [s2] Struts head tag KILLS ( 10s) page load time
When a file is loaded using dojo.require, it is not cached by the browser. musachy On 9/23/07, Jason Wyatt [EMAIL PROTECTED] wrote: Hi Martin, Yes, that's right. The dojo requires seemed unexpectedly slow during our tests. I was using Firefox's Firebug to check page load times. From memory, it looked like the dojo includes were being requested sequentially and seemed to give substantial page loading overhead (2s) even if the dojo .js files were cached. I never fully understood why there was a large overhead although the dojo files were supposedly cached. It might have been a quirk with firebug and dojo requires, or maybe the requires routine itself is slow, when called 30+ times. About 5 dojo files were consistently returning not found as well, which may not have helped the load times. Removing as much dojo stuff as I could, and upgrading from Struts 2.0.8 to 2.0.9 has solved our page load time issues. Regards Jason -Original Message- From: Martin Gainty [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 11:41 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time Hi Jason- so by attentuating dojo includes you decreased initial load time for dojo with the beneficial side effect of faster response to the browser? Thanks/ Martin-- - Original Message - From: Jason Wyatt [EMAIL PROTECTED] To: 'Struts Users Mailing List' user@struts.apache.org Sent: Thursday, September 20, 2007 9:09 PM Subject: RE: [s2] Struts head tag KILLS ( 10s) page load time I had the same issue... We use the ajax tabbed panel but no other dojo widgets, but the s:head theme=ajax tag had dojo requiring all of the dojo widget library. This was causing our page to fire off 70+ requests when loading. As our app needs to be accessed up to a thousand km away, tests showed initial load times of over 10s because of latency. I modified web\template\ajax\head.ftl to include a custom web\hack\ajax\dojoRequire.js that had the minimum dojo includes for the tabbed panels. This managed to get the number of requests down to around 30, mostly our own images and scripts, which gave acceptable load times. Eg. web\template\ajax\head.ftl: #include /${parameters.templateDir}/${themeProperties.parent}/head.ftl / script type=text/javascript src=@s.url value='/hack/ajax/dojoRequire.js' includeParams='none' encode='false' //script script type=text/javascript src=@s.url value='/struts/CommonFunctions.js' includeParams='none' encode='false'//script web\hack\ajax\dojoRequire.js: dojo.require(dojo.io.BrowserIO); dojo.require(dojo.event.topic); dojo.hostenv.setModulePrefix('struts', 'struts'); //dojo.require('dojo.widget.*'); dojo.widget.manager.registerWidgetPackage('struts.widget'); dojo.require(struts.widget.Bind); dojo.require(struts.widget.BindDiv); //dojo.require(struts.widget.BindAnchor); //dojo.require(struts.widget.ComboBox); //dojo.require(struts.widget.StrutsTimePicker) //dojo.require(dojo.widget.Editor2); //dojo.hostenv.writeIncludes(); // not needed, but allows the Venkman debugger to work with the includes Hope this helps, regards Jason - Falun Dafa Truth - Compassion - Forbearance A mind body practice under persecution in China http://www.faluninfo.net -Original Message- From: Frank W. Zammetti [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 8:09 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time If Dojo is being used for AJAX in this case, that's my guess. I know from experience that Dojo, can issue a TON of requests even if you think your only loading a small portion of it. Assuming this guess is correct, Musachy, does S2 use a custom build of Dojo? If not, that might be worth considering. Frank -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! chengas123 wrote: Hi, I am working on a Struts 2 page and page load times are way too high. I tracked it down to the Struts head tag, which I have as follows: s:head theme=ajax / Without the tag, my page issues 3 requests and takes 453ms to load. With the tag, the page issues 54 requests taking 12.24s to load. Is there something I am doing wrong here? Thanks, Ben - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED
RE: [s2] Struts head tag KILLS ( 10s) page load time
Ah, thanks Musachy, that explains what I was seeing. The total latency experienced for the dojo files to load every time was pretty high when running over a long distance, as the files are requested sequentially, rather than as parallel requests... Not sure what the best solution would be to this one apart from customisation of the dojo includes?? Regards Jason -Original Message- From: Musachy Barroso [mailto:[EMAIL PROTECTED] Sent: Monday, 24 September 2007 1:43 PM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time When a file is loaded using dojo.require, it is not cached by the browser. musachy On 9/23/07, Jason Wyatt [EMAIL PROTECTED] wrote: Hi Martin, Yes, that's right. The dojo requires seemed unexpectedly slow during our tests. I was using Firefox's Firebug to check page load times. From memory, it looked like the dojo includes were being requested sequentially and seemed to give substantial page loading overhead (2s) even if the dojo .js files were cached. I never fully understood why there was a large overhead although the dojo files were supposedly cached. It might have been a quirk with firebug and dojo requires, or maybe the requires routine itself is slow, when called 30+ times. About 5 dojo files were consistently returning not found as well, which may not have helped the load times. Removing as much dojo stuff as I could, and upgrading from Struts 2.0.8 to 2.0.9 has solved our page load time issues. Regards Jason -Original Message- From: Martin Gainty [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 11:41 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time Hi Jason- so by attentuating dojo includes you decreased initial load time for dojo with the beneficial side effect of faster response to the browser? Thanks/ Martin-- - Original Message - From: Jason Wyatt [EMAIL PROTECTED] To: 'Struts Users Mailing List' user@struts.apache.org Sent: Thursday, September 20, 2007 9:09 PM Subject: RE: [s2] Struts head tag KILLS ( 10s) page load time I had the same issue... We use the ajax tabbed panel but no other dojo widgets, but the s:head theme=ajax tag had dojo requiring all of the dojo widget library. This was causing our page to fire off 70+ requests when loading. As our app needs to be accessed up to a thousand km away, tests showed initial load times of over 10s because of latency. I modified web\template\ajax\head.ftl to include a custom web\hack\ajax\dojoRequire.js that had the minimum dojo includes for the tabbed panels. This managed to get the number of requests down to around 30, mostly our own images and scripts, which gave acceptable load times. Eg. web\template\ajax\head.ftl: #include /${parameters.templateDir}/${themeProperties.parent}/head.ftl / script type=text/javascript src=@s.url value='/hack/ajax/dojoRequire.js' includeParams='none' encode='false' //script script type=text/javascript src=@s.url value='/struts/CommonFunctions.js' includeParams='none' encode='false'//script web\hack\ajax\dojoRequire.js: dojo.require(dojo.io.BrowserIO); dojo.require(dojo.event.topic); dojo.hostenv.setModulePrefix('struts', 'struts'); //dojo.require('dojo.widget.*'); dojo.widget.manager.registerWidgetPackage('struts.widget'); dojo.require(struts.widget.Bind); dojo.require(struts.widget.BindDiv); //dojo.require(struts.widget.BindAnchor); //dojo.require(struts.widget.ComboBox); //dojo.require(struts.widget.StrutsTimePicker) //dojo.require(dojo.widget.Editor2); //dojo.hostenv.writeIncludes(); // not needed, but allows the Venkman debugger to work with the includes Hope this helps, regards Jason - Falun Dafa Truth - Compassion - Forbearance A mind body practice under persecution in China http://www.faluninfo.net -Original Message- From: Frank W. Zammetti [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 8:09 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time If Dojo is being used for AJAX in this case, that's my guess. I know from experience that Dojo, can issue a TON of requests even if you think your only loading a small portion of it. Assuming this guess is correct, Musachy, does S2 use a custom build of Dojo? If not, that might be worth considering. Frank -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you
Re: [s2] Struts head tag KILLS ( 10s) page load time
Oh damn, why is that? Cache is critical here. Don On 9/24/07, Musachy Barroso [EMAIL PROTECTED] wrote: When a file is loaded using dojo.require, it is not cached by the browser. musachy On 9/23/07, Jason Wyatt [EMAIL PROTECTED] wrote: Hi Martin, Yes, that's right. The dojo requires seemed unexpectedly slow during our tests. I was using Firefox's Firebug to check page load times. From memory, it looked like the dojo includes were being requested sequentially and seemed to give substantial page loading overhead (2s) even if the dojo .js files were cached. I never fully understood why there was a large overhead although the dojo files were supposedly cached. It might have been a quirk with firebug and dojo requires, or maybe the requires routine itself is slow, when called 30+ times. About 5 dojo files were consistently returning not found as well, which may not have helped the load times. Removing as much dojo stuff as I could, and upgrading from Struts 2.0.8 to 2.0.9 has solved our page load time issues. Regards Jason -Original Message- From: Martin Gainty [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 11:41 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time Hi Jason- so by attentuating dojo includes you decreased initial load time for dojo with the beneficial side effect of faster response to the browser? Thanks/ Martin-- - Original Message - From: Jason Wyatt [EMAIL PROTECTED] To: 'Struts Users Mailing List' user@struts.apache.org Sent: Thursday, September 20, 2007 9:09 PM Subject: RE: [s2] Struts head tag KILLS ( 10s) page load time I had the same issue... We use the ajax tabbed panel but no other dojo widgets, but the s:head theme=ajax tag had dojo requiring all of the dojo widget library. This was causing our page to fire off 70+ requests when loading. As our app needs to be accessed up to a thousand km away, tests showed initial load times of over 10s because of latency. I modified web\template\ajax\head.ftl to include a custom web\hack\ajax\dojoRequire.js that had the minimum dojo includes for the tabbed panels. This managed to get the number of requests down to around 30, mostly our own images and scripts, which gave acceptable load times. Eg. web\template\ajax\head.ftl: #include /${parameters.templateDir}/${themeProperties.parent}/head.ftl / script type=text/javascript src=@s.url value='/hack/ajax/dojoRequire.js' includeParams='none' encode='false' //script script type=text/javascript src=@s.url value='/struts/CommonFunctions.js' includeParams='none' encode='false'//script web\hack\ajax\dojoRequire.js: dojo.require(dojo.io.BrowserIO); dojo.require(dojo.event.topic); dojo.hostenv.setModulePrefix('struts', 'struts'); //dojo.require('dojo.widget.*'); dojo.widget.manager.registerWidgetPackage('struts.widget'); dojo.require(struts.widget.Bind); dojo.require(struts.widget.BindDiv); //dojo.require(struts.widget.BindAnchor); //dojo.require(struts.widget.ComboBox); //dojo.require(struts.widget.StrutsTimePicker) //dojo.require(dojo.widget.Editor2); //dojo.hostenv.writeIncludes(); // not needed, but allows the Venkman debugger to work with the includes Hope this helps, regards Jason - Falun Dafa Truth - Compassion - Forbearance A mind body practice under persecution in China http://www.faluninfo.net -Original Message- From: Frank W. Zammetti [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 8:09 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time If Dojo is being used for AJAX in this case, that's my guess. I know from experience that Dojo, can issue a TON of requests even if you think your only loading a small portion of it. Assuming this guess is correct, Musachy, does S2 use a custom build of Dojo? If not, that might be worth considering. Frank -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! chengas123 wrote: Hi, I am working on a Struts 2 page and page load times are way too high. I tracked it down to the Struts head tag, which I have as follows: s:head theme=ajax / Without the tag, my page issues 3 requests and takes 453ms to load. With the tag, the page issues 54 requests taking 12.24s
Re: [s2] Struts head tag KILLS ( 10s) page load time
On 9/20/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: I have the same problem. I'm using ajax and the response time of my pages are over 40s sometimes with the s:head theme=ajax / include. Can someone tells me if this has been fixed in struts 2.1 ? Is there a work around to this problem ? The best workaround that I have found is to Just Say NO to the built in support for Dojo and instead to use Prototype judiciously. All my ajax logic is done that way. I don't use the builtin ajax support in s2 at all. This has worked well for the level of ajax support I need in my own webapp development these days. YMMV. -Van -- Mike Van Riper [EMAIL PROTECTED] http://weblogs.java.net/blog/van_riper/ Silicon Valley Web Developer JUG https://sv-web-jug.dev.java.net JUGs International MAP http://tinyurl.com/ynktb2 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
On Yesterday at 11:25pm, VR=Van Riper [EMAIL PROTECTED] wrote: VR [..snip..] VR VR The best workaround that I have found is to Just Say NO to the built VR in support for Dojo and instead to use Prototype judiciously. All my VR ajax logic is done that way. I don't use the builtin ajax support in VR s2 at all. This has worked well for the level of ajax support I need VR in my own webapp development these days. YMMV. VR VR -Van VR VR I'll say amen to that and second the advice. I don't use the builtin s2 ajax support either. Instead, I use prototype for Ajax requests and use dexagogo/prototype for client-side validation. Cheers, -- Haroon Rafique [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[Tangential] Re: [s2] Struts head tag KILLS ( 10s) page load time
If you're not going to use the built-in AJAX support in S2, you may also want to have a look at AjaxParts Taglib (APT): http://javawebparts.sourceforge.net/javadocs/javawebparts/ajaxparts/taglib/package-summary.html ... which is a component of Java Web Parts (JWP): http://javawebparts.sourceforge.net The JWP example app demonstrates APT pretty thoroughly. I know some folks use APT with S1 and like it, and it should work just as well with S2 (assuming you're using JSPs I suppose). I could see making this an S2 plug-in if there was some interest in that, I've had that thought before. Frank Haroon Rafique wrote: On Yesterday at 11:25pm, VR=Van Riper [EMAIL PROTECTED] wrote: VR [..snip..] VR VR The best workaround that I have found is to Just Say NO to the built VR in support for Dojo and instead to use Prototype judiciously. All my VR ajax logic is done that way. I don't use the builtin ajax support in VR s2 at all. This has worked well for the level of ajax support I need VR in my own webapp development these days. YMMV. VR VR -Van VR VR I'll say amen to that and second the advice. I don't use the builtin s2 ajax support either. Instead, I use prototype for Ajax requests and use dexagogo/prototype for client-side validation. Cheers, -- Haroon Rafique [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [Tangential] Re: [s2] Struts head tag KILLS ( 10s) page load time
I could see making this an S2 plug-in if there was some interest in that, I've had that thought before. That would be a pretty good idea :) musachy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
Setting cache=true will pretty much kill the Dojo lazy loading feature, as it will use a custom build (all the required js files compressed in one file). On top of that 2.1 won't scan the whole page for widgets, which will make it even faster. musachy On 9/20/07, Don Brown [EMAIL PROTECTED] wrote: Musachy, has this been fixed in 2.1? Are the number of requests happening because we are using Dojo's lazy import feature? Don On 9/21/07, Musachy Barroso [EMAIL PROTECTED] wrote: Only on 2.1 Frank, if you set cache=true it will use a custom build that includes the files needed by the S2 widgets. The first download will be big but it will be cached by the browser. To the OP: Are you using ajax? if not, don't set theme=ajax on head. regards musachy On 9/20/07, Frank W. Zammetti [EMAIL PROTECTED] wrote: If Dojo is being used for AJAX in this case, that's my guess. I know from experience that Dojo, can issue a TON of requests even if you think your only loading a small portion of it. Assuming this guess is correct, Musachy, does S2 use a custom build of Dojo? If not, that might be worth considering. Frank -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! chengas123 wrote: Hi, I am working on a Struts 2 page and page load times are way too high. I tracked it down to the Struts head tag, which I have as follows: s:head theme=ajax / Without the tag, my page issues 3 requests and takes 453ms to load. With the tag, the page issues 54 requests taking 12.24s to load. Is there something I am doing wrong here? Thanks, Ben - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Hey you! Would you help me to carry the stone? Pink Floyd - 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] -- Hey you! Would you help me to carry the stone? Pink Floyd - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [Tangential] Re: [s2] Struts head tag KILLS ( 10s) page load time
I'll see if I can find some time this weekend... the only thing that's really stopped me in the past when I thought of it is that it's really so darned easy to drop in manually (two added JAR files, one config file and one context param in web.xml), there's almost no benefit to it being a plug-in that I can see (nor am I 100% sure it can be at this point... can I set context params somehow from a plug-in?)... other than having it available in one place with all the other plug-ins, which would be a little more convenient. But I'll go ahead and see if I can do it over the next 2-3 days... I should probably bump the DataVision plug-in to 1.0 anyway, it appears stable enough at this point. Might as well do all the plug-in work together! Frank Musachy Barroso wrote: I could see making this an S2 plug-in if there was some interest in that, I've had that thought before. That would be a pretty good idea :) musachy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [Tangential] Re: [s2] Struts head tag KILLS ( 10s) page load time
Musachy where do you set this cache=true in what file exactly? On 9/21/07, Musachy Barroso [EMAIL PROTECTED] wrote: I could see making this an S2 plug-in if there was some interest in that, I've had that thought before. That would be a pretty good idea :) musachy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Pavel Sapozhnikov xFact, Inc [EMAIL PROTECTED]
Re: [Tangential] Re: [s2] Struts head tag KILLS ( 10s) page load time
on any file that you are using the S2 ajax tags, you have to use the sx:head, so just set its cache attribute to true. 2.1 only :) musachy On 9/21/07, Pavel Sapozhnikov [EMAIL PROTECTED] wrote: Musachy where do you set this cache=true in what file exactly? On 9/21/07, Musachy Barroso [EMAIL PROTECTED] wrote: I could see making this an S2 plug-in if there was some interest in that, I've had that thought before. That would be a pretty good idea :) musachy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Pavel Sapozhnikov xFact, Inc [EMAIL PROTECTED] -- Hey you! Would you help me to carry the stone? Pink Floyd - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [Tangential] Re: [s2] Struts head tag KILLS ( 10s) page load time
If you don't have plugin anything, there isn't any real benefit to it, but I haven't looked at JWP. musachy On 9/21/07, Frank W. Zammetti [EMAIL PROTECTED] wrote: I'll see if I can find some time this weekend... the only thing that's really stopped me in the past when I thought of it is that it's really so darned easy to drop in manually (two added JAR files, one config file and one context param in web.xml), there's almost no benefit to it being a plug-in that I can see (nor am I 100% sure it can be at this point... can I set context params somehow from a plug-in?)... other than having it available in one place with all the other plug-ins, which would be a little more convenient. But I'll go ahead and see if I can do it over the next 2-3 days... I should probably bump the DataVision plug-in to 1.0 anyway, it appears stable enough at this point. Might as well do all the plug-in work together! Frank Musachy Barroso wrote: I could see making this an S2 plug-in if there was some interest in that, I've had that thought before. That would be a pretty good idea :) musachy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Hey you! Would you help me to carry the stone? Pink Floyd - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [Tangential] Re: [s2] Struts head tag KILLS ( 10s) page load time
If a undestand, there is no way to get rid of this problem with struts 2.0.9. There is still no date for the 2.1 release availability ? Meissa Musachy Barroso [EMAIL PROTECTED] 21/09/2007 16:52 Veuillez répondre à Struts Users Mailing List user@struts.apache.org A Struts Users Mailing List user@struts.apache.org cc Objet Re: [Tangential] Re: [s2] Struts head tag KILLS ( 10s) page load time on any file that you are using the S2 ajax tags, you have to use the sx:head, so just set its cache attribute to true. 2.1 only :) musachy On 9/21/07, Pavel Sapozhnikov [EMAIL PROTECTED] wrote: Musachy where do you set this cache=true in what file exactly? On 9/21/07, Musachy Barroso [EMAIL PROTECTED] wrote: I could see making this an S2 plug-in if there was some interest in that, I've had that thought before. That would be a pretty good idea :) musachy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Pavel Sapozhnikov xFact, Inc [EMAIL PROTECTED] -- Hey you! Would you help me to carry the stone? Pink Floyd - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] L'integrite de ce message n'etant pas assuree sur internet, Natixis ne peut etre tenu responsable de son contenu. Toute utilisation ou diffusion non autorisee est interdite. Si vous n'etes pas destinataire de ce message, merci de le detruire et d'avertir l'expediteur. Ensemble, faisons un geste pour l'environnement : n'imprimons nos mails que si necessaire The integrity of this message cannot be guaranteed on the Internet. Natixis can not therefore be considered responsible for the contents. Any unauthorized use or dissemination is prohibited. If you are not the intended recipient of this message, then please delete it and notify the sender. Let us mind the environment : let's print our mails only when necessary.
Re: [Tangential] Re: [s2] Struts head tag KILLS ( 10s) page load time
The easiest solution on 2.0.9 is just to overwrite head.ftl and remove the dojo stuff, you won't have tooltips but you are probably not using them anyway. musachy On 9/21/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: If a undestand, there is no way to get rid of this problem with struts 2.0.9. There is still no date for the 2.1 release availability ? Meissa Musachy Barroso [EMAIL PROTECTED] 21/09/2007 16:52 Veuillez répondre à Struts Users Mailing List user@struts.apache.org A Struts Users Mailing List user@struts.apache.org cc Objet Re: [Tangential] Re: [s2] Struts head tag KILLS ( 10s) page load time on any file that you are using the S2 ajax tags, you have to use the sx:head, so just set its cache attribute to true. 2.1 only :) musachy On 9/21/07, Pavel Sapozhnikov [EMAIL PROTECTED] wrote: Musachy where do you set this cache=true in what file exactly? On 9/21/07, Musachy Barroso [EMAIL PROTECTED] wrote: I could see making this an S2 plug-in if there was some interest in that, I've had that thought before. That would be a pretty good idea :) musachy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Pavel Sapozhnikov xFact, Inc [EMAIL PROTECTED] -- Hey you! Would you help me to carry the stone? Pink Floyd - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] L'integrite de ce message n'etant pas assuree sur internet, Natixis ne peut etre tenu responsable de son contenu. Toute utilisation ou diffusion non autorisee est interdite. Si vous n'etes pas destinataire de ce message, merci de le detruire et d'avertir l'expediteur. Ensemble, faisons un geste pour l'environnement : n'imprimons nos mails que si necessaire The integrity of this message cannot be guaranteed on the Internet. Natixis can not therefore be considered responsible for the contents. Any unauthorized use or dissemination is prohibited. If you are not the intended recipient of this message, then please delete it and notify the sender. Let us mind the environment : let's print our mails only when necessary. -- Hey you! Would you help me to carry the stone? Pink Floyd - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [Tangential] Re: [s2] Struts head tag KILLS ( 10s) page load time
I agree, and that's the thought that stopped me from doing this in the past. I do think it would be nice to bring APT to a wider audience, and making it a plug-in would probably give it more exposure and have that effect, but it's not the best reason to do something like this. I may still do it if I can find the time, but it's not a priority in any way. Thanks Musachy! Frank Musachy Barroso wrote: If you don't have plugin anything, there isn't any real benefit to it, but I haven't looked at JWP. musachy On 9/21/07, Frank W. Zammetti [EMAIL PROTECTED] wrote: I'll see if I can find some time this weekend... the only thing that's really stopped me in the past when I thought of it is that it's really so darned easy to drop in manually (two added JAR files, one config file and one context param in web.xml), there's almost no benefit to it being a plug-in that I can see (nor am I 100% sure it can be at this point... can I set context params somehow from a plug-in?)... other than having it available in one place with all the other plug-ins, which would be a little more convenient. But I'll go ahead and see if I can do it over the next 2-3 days... I should probably bump the DataVision plug-in to 1.0 anyway, it appears stable enough at this point. Might as well do all the plug-in work together! Frank Musachy Barroso wrote: I could see making this an S2 plug-in if there was some interest in that, I've had that thought before. That would be a pretty good idea :) musachy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
I would actually love to know the answer to this problem because I am working with something similar too. Thanks. On 9/20/07, chengas123 [EMAIL PROTECTED] wrote: Hi, I am working on a Struts 2 page and page load times are way too high. I tracked it down to the Struts head tag, which I have as follows: s:head theme=ajax / Without the tag, my page issues 3 requests and takes 453ms to load. With the tag, the page issues 54 requests taking 12.24s to load. Is there something I am doing wrong here? Thanks, Ben -- View this message in context: http://www.nabble.com/-s2--Struts-head-tag-KILLS-%28%3E-10s%29-page-load-time-tf4490390.html#a12806509 Sent from the Struts - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Pavel Sapozhnikov xFact, Inc [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
If Dojo is being used for AJAX in this case, that's my guess. I know from experience that Dojo, can issue a TON of requests even if you think your only loading a small portion of it. Assuming this guess is correct, Musachy, does S2 use a custom build of Dojo? If not, that might be worth considering. Frank -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! chengas123 wrote: Hi, I am working on a Struts 2 page and page load times are way too high. I tracked it down to the Struts head tag, which I have as follows: s:head theme=ajax / Without the tag, my page issues 3 requests and takes 453ms to load. With the tag, the page issues 54 requests taking 12.24s to load. Is there something I am doing wrong here? Thanks, Ben - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: [s2] Struts head tag KILLS ( 10s) page load time
I had the same issue... We use the ajax tabbed panel but no other dojo widgets, but the s:head theme=ajax tag had dojo requiring all of the dojo widget library. This was causing our page to fire off 70+ requests when loading. As our app needs to be accessed up to a thousand km away, tests showed initial load times of over 10s because of latency. I modified web\template\ajax\head.ftl to include a custom web\hack\ajax\dojoRequire.js that had the minimum dojo includes for the tabbed panels. This managed to get the number of requests down to around 30, mostly our own images and scripts, which gave acceptable load times. Eg. web\template\ajax\head.ftl: #include /${parameters.templateDir}/${themeProperties.parent}/head.ftl / script type=text/javascript src=@s.url value='/hack/ajax/dojoRequire.js' includeParams='none' encode='false' //script script type=text/javascript src=@s.url value='/struts/CommonFunctions.js' includeParams='none' encode='false'//script web\hack\ajax\dojoRequire.js: dojo.require(dojo.io.BrowserIO); dojo.require(dojo.event.topic); dojo.hostenv.setModulePrefix('struts', 'struts'); //dojo.require('dojo.widget.*'); dojo.widget.manager.registerWidgetPackage('struts.widget'); dojo.require(struts.widget.Bind); dojo.require(struts.widget.BindDiv); //dojo.require(struts.widget.BindAnchor); //dojo.require(struts.widget.ComboBox); //dojo.require(struts.widget.StrutsTimePicker) //dojo.require(dojo.widget.Editor2); //dojo.hostenv.writeIncludes(); // not needed, but allows the Venkman debugger to work with the includes Hope this helps, regards Jason - Falun Dafa Truth - Compassion - Forbearance A mind body practice under persecution in China http://www.faluninfo.net -Original Message- From: Frank W. Zammetti [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 8:09 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time If Dojo is being used for AJAX in this case, that's my guess. I know from experience that Dojo, can issue a TON of requests even if you think your only loading a small portion of it. Assuming this guess is correct, Musachy, does S2 use a custom build of Dojo? If not, that might be worth considering. Frank -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! chengas123 wrote: Hi, I am working on a Struts 2 page and page load times are way too high. I tracked it down to the Struts head tag, which I have as follows: s:head theme=ajax / Without the tag, my page issues 3 requests and takes 453ms to load. With the tag, the page issues 54 requests taking 12.24s to load. Is there something I am doing wrong here? Thanks, Ben - 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: [s2] Struts head tag KILLS ( 10s) page load time
Hi Jason- so by attentuating dojo includes you decreased initial load time for dojo with the beneficial side effect of faster response to the browser? Thanks/ Martin-- - Original Message - From: Jason Wyatt [EMAIL PROTECTED] To: 'Struts Users Mailing List' user@struts.apache.org Sent: Thursday, September 20, 2007 9:09 PM Subject: RE: [s2] Struts head tag KILLS ( 10s) page load time I had the same issue... We use the ajax tabbed panel but no other dojo widgets, but the s:head theme=ajax tag had dojo requiring all of the dojo widget library. This was causing our page to fire off 70+ requests when loading. As our app needs to be accessed up to a thousand km away, tests showed initial load times of over 10s because of latency. I modified web\template\ajax\head.ftl to include a custom web\hack\ajax\dojoRequire.js that had the minimum dojo includes for the tabbed panels. This managed to get the number of requests down to around 30, mostly our own images and scripts, which gave acceptable load times. Eg. web\template\ajax\head.ftl: #include /${parameters.templateDir}/${themeProperties.parent}/head.ftl / script type=text/javascript src=@s.url value='/hack/ajax/dojoRequire.js' includeParams='none' encode='false' //script script type=text/javascript src=@s.url value='/struts/CommonFunctions.js' includeParams='none' encode='false'//script web\hack\ajax\dojoRequire.js: dojo.require(dojo.io.BrowserIO); dojo.require(dojo.event.topic); dojo.hostenv.setModulePrefix('struts', 'struts'); //dojo.require('dojo.widget.*'); dojo.widget.manager.registerWidgetPackage('struts.widget'); dojo.require(struts.widget.Bind); dojo.require(struts.widget.BindDiv); //dojo.require(struts.widget.BindAnchor); //dojo.require(struts.widget.ComboBox); //dojo.require(struts.widget.StrutsTimePicker) //dojo.require(dojo.widget.Editor2); //dojo.hostenv.writeIncludes(); // not needed, but allows the Venkman debugger to work with the includes Hope this helps, regards Jason - Falun Dafa Truth - Compassion - Forbearance A mind body practice under persecution in China http://www.faluninfo.net -Original Message- From: Frank W. Zammetti [mailto:[EMAIL PROTECTED] Sent: Friday, 21 September 2007 8:09 AM To: Struts Users Mailing List Subject: Re: [s2] Struts head tag KILLS ( 10s) page load time If Dojo is being used for AJAX in this case, that's my guess. I know from experience that Dojo, can issue a TON of requests even if you think your only loading a small portion of it. Assuming this guess is correct, Musachy, does S2 use a custom build of Dojo? If not, that might be worth considering. Frank -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! chengas123 wrote: Hi, I am working on a Struts 2 page and page load times are way too high. I tracked it down to the Struts head tag, which I have as follows: s:head theme=ajax / Without the tag, my page issues 3 requests and takes 453ms to load. With the tag, the page issues 54 requests taking 12.24s to load. Is there something I am doing wrong here? Thanks, Ben - 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: [s2] Struts head tag KILLS ( 10s) page load time
Only on 2.1 Frank, if you set cache=true it will use a custom build that includes the files needed by the S2 widgets. The first download will be big but it will be cached by the browser. To the OP: Are you using ajax? if not, don't set theme=ajax on head. regards musachy On 9/20/07, Frank W. Zammetti [EMAIL PROTECTED] wrote: If Dojo is being used for AJAX in this case, that's my guess. I know from experience that Dojo, can issue a TON of requests even if you think your only loading a small portion of it. Assuming this guess is correct, Musachy, does S2 use a custom build of Dojo? If not, that might be worth considering. Frank -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! chengas123 wrote: Hi, I am working on a Struts 2 page and page load times are way too high. I tracked it down to the Struts head tag, which I have as follows: s:head theme=ajax / Without the tag, my page issues 3 requests and takes 453ms to load. With the tag, the page issues 54 requests taking 12.24s to load. Is there something I am doing wrong here? Thanks, Ben - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Hey you! Would you help me to carry the stone? Pink Floyd - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
Musachy, has this been fixed in 2.1? Are the number of requests happening because we are using Dojo's lazy import feature? Don On 9/21/07, Musachy Barroso [EMAIL PROTECTED] wrote: Only on 2.1 Frank, if you set cache=true it will use a custom build that includes the files needed by the S2 widgets. The first download will be big but it will be cached by the browser. To the OP: Are you using ajax? if not, don't set theme=ajax on head. regards musachy On 9/20/07, Frank W. Zammetti [EMAIL PROTECTED] wrote: If Dojo is being used for AJAX in this case, that's my guess. I know from experience that Dojo, can issue a TON of requests even if you think your only loading a small portion of it. Assuming this guess is correct, Musachy, does S2 use a custom build of Dojo? If not, that might be worth considering. Frank -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! chengas123 wrote: Hi, I am working on a Struts 2 page and page load times are way too high. I tracked it down to the Struts head tag, which I have as follows: s:head theme=ajax / Without the tag, my page issues 3 requests and takes 453ms to load. With the tag, the page issues 54 requests taking 12.24s to load. Is there something I am doing wrong here? Thanks, Ben - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Hey you! Would you help me to carry the stone? Pink Floyd - 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: [s2] Struts head tag KILLS ( 10s) page load time
The OP should try that cache=true setting first obviously... I'd be surprised if that didn't get rid of all the requests... we had exactly the same experience in my current project, even though we're not using S2, and we found the custom build solved the problem (in addition to caching static content like JS files on the web server, but that's something else). Frank Don Brown wrote: Musachy, has this been fixed in 2.1? Are the number of requests happening because we are using Dojo's lazy import feature? Don On 9/21/07, Musachy Barroso [EMAIL PROTECTED] wrote: Only on 2.1 Frank, if you set cache=true it will use a custom build that includes the files needed by the S2 widgets. The first download will be big but it will be cached by the browser. To the OP: Are you using ajax? if not, don't set theme=ajax on head. regards musachy On 9/20/07, Frank W. Zammetti [EMAIL PROTECTED] wrote: If Dojo is being used for AJAX in this case, that's my guess. I know from experience that Dojo, can issue a TON of requests even if you think your only loading a small portion of it. Assuming this guess is correct, Musachy, does S2 use a custom build of Dojo? If not, that might be worth considering. Frank -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! chengas123 wrote: Hi, I am working on a Struts 2 page and page load times are way too high. I tracked it down to the Struts head tag, which I have as follows: s:head theme=ajax / Without the tag, my page issues 3 requests and takes 453ms to load. With the tag, the page issues 54 requests taking 12.24s to load. Is there something I am doing wrong here? Thanks, Ben - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Hey you! Would you help me to carry the stone? Pink Floyd - 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] -- -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [s2] Struts head tag KILLS ( 10s) page load time
I have the same problem. I'm using ajax and the response time of my pages are over 40s sometimes with the s:head theme=ajax / include. Can someone tells me if this has been fixed in struts 2.1 ? Is there a work around to this problem ? Meissa Frank W. Zammetti [EMAIL PROTECTED] 21/09/2007 06:38 Veuillez répondre à Struts Users Mailing List user@struts.apache.org A Struts Users Mailing List user@struts.apache.org cc Objet Re: [s2] Struts head tag KILLS ( 10s) page load time The OP should try that cache=true setting first obviously... I'd be surprised if that didn't get rid of all the requests... we had exactly the same experience in my current project, even though we're not using S2, and we found the custom build solved the problem (in addition to caching static content like JS files on the web server, but that's something else). Frank Don Brown wrote: Musachy, has this been fixed in 2.1? Are the number of requests happening because we are using Dojo's lazy import feature? Don On 9/21/07, Musachy Barroso [EMAIL PROTECTED] wrote: Only on 2.1 Frank, if you set cache=true it will use a custom build that includes the files needed by the S2 widgets. The first download will be big but it will be cached by the browser. To the OP: Are you using ajax? if not, don't set theme=ajax on head. regards musachy On 9/20/07, Frank W. Zammetti [EMAIL PROTECTED] wrote: If Dojo is being used for AJAX in this case, that's my guess. I know from experience that Dojo, can issue a TON of requests even if you think your only loading a small portion of it. Assuming this guess is correct, Musachy, does S2 use a custom build of Dojo? If not, that might be worth considering. Frank -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! chengas123 wrote: Hi, I am working on a Struts 2 page and page load times are way too high. I tracked it down to the Struts head tag, which I have as follows: s:head theme=ajax / Without the tag, my page issues 3 requests and takes 453ms to load. With the tag, the page issues 54 requests taking 12.24s to load. Is there something I am doing wrong here? Thanks, Ben - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Hey you! Would you help me to carry the stone? Pink Floyd - 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] -- -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM/Yahoo: fzammetti MSN: [EMAIL PROTECTED] Author of Practical Ajax Projects With Java Technology (2006, Apress, ISBN 1-59059-695-1) and JavaScript, DOM Scripting and Ajax Projects (2007, Apress, ISBN 1-59059-816-4) Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] L'integrite de ce message n'etant pas assuree sur internet, Natixis ne peut etre tenu responsable de son contenu. Toute utilisation ou diffusion non autorisee est interdite. Si vous n'etes pas destinataire de ce message, merci de le detruire et d'avertir l'expediteur. Ensemble, faisons un geste pour l'environnement : n'imprimons nos mails que si necessaire The integrity of this message cannot be guaranteed on the Internet. Natixis can not therefore be considered responsible for the contents. Any unauthorized use or dissemination is prohibited. If you are not the intended recipient of this message, then please delete it and notify the sender.