Re: My Faces Tunning

2011-10-18 Thread Michael Heinen

A few thoughts:
- Set the NUMBER_OF_VIEWS_IN SESSION to 1 if your app does not support 
the browser back button!
- try to reduce the number of components (e.g. conditionally controls 
can be excluded at compile time via c:if or via dynamic includes instead 
of visibleOnUserRole or rendered checks).

- facelets instead of jsps
- plain html tags where possible
- short component ids

Michael



Am 17.10.2011 22:16, schrieb Boyd, David (Corporate):

All,



I am doing some investigation into how to shrink the amount of session
memory our JSF application is consuming on a per user basis.



We are using MyFaces 1.1.7 and Tomahawk 1.1.5 running on IBM Websphere
7.0 patch 19. (Not able to upgrade either of these items at this time)



IBM's guideline is that the session size should be less then 5k -
average around 2.5k in order not to impact performance of the server and
session replication.  We are currently using Memory to Memory but
looking at moving to database as suggested by IBM.



Our site was running at about 35M per user.  We changed the number of
view states from 100 to 10 and that dropped it down to around 4M.



We have several backing beans which are currently session scope and are
looking at changing them to request scope.



I also found the following:
http://www.econsulting.nl/images/pdf/Tuning%20JSF%20Applications-%20J-Sp
ring%202008.pdf which seems to have a lot of information concerning how
JSF handles certain content on the pages.  This is still under
investigation to make sure what is stated make sense.



I have also read somewhere that regardless if the managed backing bean
is session or request scope is that the view state will still have the
bean and its content.  So the view state size will not change.  Looking
for clarification on this one.



The questions is are others facing the same issue in which JSF
applications tend to consume a lot of memory for a given users session?




What are some of the best practices to reduce this size if any or is
this just the way when using JSF?



Issues with session replication on IBM WebSphere when running a JSF
application?



What we see as a result of this is that in the event a user hops to
another server, the session data is not present due to how large the
data is and how long it takes to replicate.  User experience issues.



We had seen an issue in which it appeared that changes to the object in
the session was not being updated correctly and have done some session
management tuning in which we customize the settings so that all session
attributes are written out.  Looking at the .jar file it does appear
that myFaces is making the call correctly when the contents of the
object in the session changes.  So WebSphere session listener should be
picking up that change.






Re: My Faces Tunning

2011-10-18 Thread Mark Struberg
 - Set the NUMBER_OF_VIEWS_IN SESSION to 1 if your app does not support 
 the browser back button!

And once a user opens another browser tab all will crash :(

The missing windowId support is really a pitty in the JSF spec, and we 
currently think hard about how to solve this (at least in MyFaces).
Until then all the stored views are shared accross all open browser tabs.

The best thing you can do to reduse Session space is to use 
ClientSideStateSaving

LieGrue,
strub


- Original Message -
 From: Michael Heinen mhn4...@googlemail.com
 To: MyFaces Discussion users@myfaces.apache.org
 Cc: 
 Sent: Tuesday, October 18, 2011 9:36 AM
 Subject: Re: My Faces Tunning
 
 A few thoughts:
 - Set the NUMBER_OF_VIEWS_IN SESSION to 1 if your app does not support 
 the browser back button!
 - try to reduce the number of components (e.g. conditionally controls 
 can be excluded at compile time via c:if or via dynamic includes instead 
 of visibleOnUserRole or rendered checks).
 - facelets instead of jsps
 - plain html tags where possible
 - short component ids
 
 Michael
 
 
 
 Am 17.10.2011 22:16, schrieb Boyd, David (Corporate):
  All,
 
 
 
  I am doing some investigation into how to shrink the amount of session
  memory our JSF application is consuming on a per user basis.
 
 
 
  We are using MyFaces 1.1.7 and Tomahawk 1.1.5 running on IBM Websphere
  7.0 patch 19. (Not able to upgrade either of these items at this time)
 
 
 
  IBM's guideline is that the session size should be less then 5k -
  average around 2.5k in order not to impact performance of the server and
  session replication.  We are currently using Memory to Memory but
  looking at moving to database as suggested by IBM.
 
 
 
  Our site was running at about 35M per user.  We changed the number of
  view states from 100 to 10 and that dropped it down to around 4M.
 
 
 
  We have several backing beans which are currently session scope and are
  looking at changing them to request scope.
 
 
 
  I also found the following:
  http://www.econsulting.nl/images/pdf/Tuning%20JSF%20Applications-%20J-Sp
  ring%202008.pdf which seems to have a lot of information concerning how
  JSF handles certain content on the pages.  This is still under
  investigation to make sure what is stated make sense.
 
 
 
  I have also read somewhere that regardless if the managed backing bean
  is session or request scope is that the view state will still have the
  bean and its content.  So the view state size will not change.  Looking
  for clarification on this one.
 
 
 
  The questions is are others facing the same issue in which JSF
  applications tend to consume a lot of memory for a given users session?
 
 
 
 
  What are some of the best practices to reduce this size if any or is
  this just the way when using JSF?
 
 
 
  Issues with session replication on IBM WebSphere when running a JSF
  application?
 
 
 
  What we see as a result of this is that in the event a user hops to
  another server, the session data is not present due to how large the
  data is and how long it takes to replicate.  User experience issues.
 
 
 
  We had seen an issue in which it appeared that changes to the object in
  the session was not being updated correctly and have done some session
  management tuning in which we customize the settings so that all session
  attributes are written out.  Looking at the .jar file it does appear
  that myFaces is making the call correctly when the contents of the
  object in the session changes.  So WebSphere session listener should be
  picking up that change.
 
 



RE: My Faces Tunning

2011-10-18 Thread Boyd, David (Corporate)
If we go with client side state saving what kind of performance hit can we 
expect?  

Going this route does this make assumptions on the type of machine a user has?  
The browser that they are using?

From the myFaces wiki, I see that if we go with client side we have the issue 
of serialization.

At this point can someone point me to a good reference in order for me to 
understand the life cycle of JSF request/response to see how all this plays out?

-Original Message-
From: Mark Struberg [mailto:strub...@yahoo.de] 
Sent: Tuesday, October 18, 2011 4:01 AM
To: MyFaces Discussion
Subject: Re: My Faces Tunning

 - Set the NUMBER_OF_VIEWS_IN SESSION to 1 if your app does not support 
 the browser back button!

And once a user opens another browser tab all will crash :(

The missing windowId support is really a pitty in the JSF spec, and we 
currently think hard about how to solve this (at least in MyFaces).
Until then all the stored views are shared accross all open browser tabs.

The best thing you can do to reduse Session space is to use 
ClientSideStateSaving

LieGrue,
strub


- Original Message -
 From: Michael Heinen mhn4...@googlemail.com
 To: MyFaces Discussion users@myfaces.apache.org
 Cc: 
 Sent: Tuesday, October 18, 2011 9:36 AM
 Subject: Re: My Faces Tunning
 
 A few thoughts:
 - Set the NUMBER_OF_VIEWS_IN SESSION to 1 if your app does not support 
 the browser back button!
 - try to reduce the number of components (e.g. conditionally controls 
 can be excluded at compile time via c:if or via dynamic includes instead 
 of visibleOnUserRole or rendered checks).
 - facelets instead of jsps
 - plain html tags where possible
 - short component ids
 
 Michael
 
 
 
 Am 17.10.2011 22:16, schrieb Boyd, David (Corporate):
  All,
 
 
 
  I am doing some investigation into how to shrink the amount of session
  memory our JSF application is consuming on a per user basis.
 
 
 
  We are using MyFaces 1.1.7 and Tomahawk 1.1.5 running on IBM Websphere
  7.0 patch 19. (Not able to upgrade either of these items at this time)
 
 
 
  IBM's guideline is that the session size should be less then 5k -
  average around 2.5k in order not to impact performance of the server and
  session replication.  We are currently using Memory to Memory but
  looking at moving to database as suggested by IBM.
 
 
 
  Our site was running at about 35M per user.  We changed the number of
  view states from 100 to 10 and that dropped it down to around 4M.
 
 
 
  We have several backing beans which are currently session scope and are
  looking at changing them to request scope.
 
 
 
  I also found the following:
  http://www.econsulting.nl/images/pdf/Tuning%20JSF%20Applications-%20J-Sp
  ring%202008.pdf which seems to have a lot of information concerning how
  JSF handles certain content on the pages.  This is still under
  investigation to make sure what is stated make sense.
 
 
 
  I have also read somewhere that regardless if the managed backing bean
  is session or request scope is that the view state will still have the
  bean and its content.  So the view state size will not change.  Looking
  for clarification on this one.
 
 
 
  The questions is are others facing the same issue in which JSF
  applications tend to consume a lot of memory for a given users session?
 
 
 
 
  What are some of the best practices to reduce this size if any or is
  this just the way when using JSF?
 
 
 
  Issues with session replication on IBM WebSphere when running a JSF
  application?
 
 
 
  What we see as a result of this is that in the event a user hops to
  another server, the session data is not present due to how large the
  data is and how long it takes to replicate.  User experience issues.
 
 
 
  We had seen an issue in which it appeared that changes to the object in
  the session was not being updated correctly and have done some session
  management tuning in which we customize the settings so that all session
  attributes are written out.  Looking at the .jar file it does appear
  that myFaces is making the call correctly when the contents of the
  object in the session changes.  So WebSphere session listener should be
  picking up that change.
 
 



Re: My Faces Tunning

2011-10-18 Thread Kito Mann
Hello David,

How large are your pages? Do you have several tabs each with nested tabs and
lots of fields? Which component suite(s) are you using?
---
Kito D. Mann | twitter: kito99 | Author, JSF in Action
Virtua, Inc. | http://www.virtua.com | JSF/Java EE training and consulting
http://www.JSFCentral.com - JavaServer Faces FAQ, news, and info | twitter:
jsfcentral
+1 203-404-4848 x3

* Listen to the latest headlines in the JSF and Java EE newscast:
http://blogs.jsfcentral.com/roller/editorsdesk/category/JSF+and+Java+EE+Newscast
* Keep up with the aftermath of the Oracle/Sun merger:
http://www.mergerspeak.com



On Mon, Oct 17, 2011 at 4:16 PM, Boyd, David (Corporate) 
david.b...@adesa.com wrote:

 All,



 I am doing some investigation into how to shrink the amount of session
 memory our JSF application is consuming on a per user basis.



 We are using MyFaces 1.1.7 and Tomahawk 1.1.5 running on IBM Websphere
 7.0 patch 19. (Not able to upgrade either of these items at this time)



 IBM's guideline is that the session size should be less then 5k -
 average around 2.5k in order not to impact performance of the server and
 session replication.  We are currently using Memory to Memory but
 looking at moving to database as suggested by IBM.



 Our site was running at about 35M per user.  We changed the number of
 view states from 100 to 10 and that dropped it down to around 4M.



 We have several backing beans which are currently session scope and are
 looking at changing them to request scope.



 I also found the following:
 http://www.econsulting.nl/images/pdf/Tuning%20JSF%20Applications-%20J-Sp
 ring%202008.pdf which seems to have a lot of information concerning how
 JSF handles certain content on the pages.  This is still under
 investigation to make sure what is stated make sense.



 I have also read somewhere that regardless if the managed backing bean
 is session or request scope is that the view state will still have the
 bean and its content.  So the view state size will not change.  Looking
 for clarification on this one.



 The questions is are others facing the same issue in which JSF
 applications tend to consume a lot of memory for a given users session?




 What are some of the best practices to reduce this size if any or is
 this just the way when using JSF?



 Issues with session replication on IBM WebSphere when running a JSF
 application?



 What we see as a result of this is that in the event a user hops to
 another server, the session data is not present due to how large the
 data is and how long it takes to replicate.  User experience issues.



 We had seen an issue in which it appeared that changes to the object in
 the session was not being updated correctly and have done some session
 management tuning in which we customize the settings so that all session
 attributes are written out.  Looking at the .jar file it does appear
 that myFaces is making the call correctly when the contents of the
 object in the session changes.  So WebSphere session listener should be
 picking up that change.




Re: CODI/ExtVal Add-Ons

2011-10-18 Thread Gerhard Petracek
hi thomas,

since we might move it to codi after v1.0.2, there won't be a deployment
(for now).

regards,
gerhard

http://www.irian.at

Your JSF powerhouse -
JSF Consulting, Development and
Courses in English and German

Professional Support for Apache MyFaces



2011/10/17 Thomas Andraschko zoi...@googlemail.com

 Hi Gerhard,

 thanks for this links but i can't find the boost add-on in this
 repositories.
 It this add-on somewhere available or should i build it from source?

 Thanks
 Thomas

 2011/10/11 Gerhard Petracek gerhard.petra...@gmail.com

  hi thomas,
 
  see [1] and [2].
  some add-ons are deployed to sub-directories of [3] btw. [4].
  (examples like [5] show how to configure such repositories.)
 
  regards,
  gerhard
 
  [1]
 
 https://cwiki.apache.org/confluence/display/EXTCDI/External#External-Addons
  [2]
 
 https://cwiki.apache.org/confluence/display/EXTVAL/External#External-Addons
  [3] http://os890-m2-repository.googlecode.com/svn/trunk/
  [4] http://os890-m2-repository.googlecode.com/svn/tags/
  [5]
 
 
 http://code.google.com/a/apache-extras.org/p/myfaces-codi-addons/source/browse/controlled_bootstrapping_owb/example
 
  http://www.irian.at
 
  Your JSF powerhouse -
  JSF Consulting, Development and
  Courses in English and German
 
  Professional Support for Apache MyFaces
 
 
 
  2011/10/11 Thomas Andraschko zoi...@googlemail.com
 
   Hi,
  
   is there a list with all CODI and ExtVal Add-Ons available?
   Especially i'm interested in the CODI Boos Add-On. Is there also an
 Maven
   Repository for this stuff?
  
   Thanks and best regards
   Thomas
  
 



Re: NPE with CODI, OWB and JUNIT

2011-10-18 Thread Thomas Andraschko
Hi Gerhard,

thanks, it works!


2011/10/17 Gerhard Petracek gerhard.petra...@gmail.com

 hi thomas,

 i see. in this case you need the cditest-owb module of owb (it's in the
 same
 example).

 regards,
 gerhard

 http://www.irian.at

 Your JSF powerhouse -
 JSF Consulting, Development and
 Courses in English and German

 Professional Support for Apache MyFaces


 2011/10/17 Thomas Andraschko zoi...@googlemail.com

  Also i don't want to include jsf/web dependencies to this module, i only
  need a CDI aware test. This is just for my business logic layer.
 
  2011/10/17 Thomas Andraschko zoi...@googlemail.com
 
   Hi Gerhard,
  
   do i really need this when i just want to test my business logic
 without
   web and jsf?
  
   Best regards,
   Thomas
  
  
   2011/10/17 Gerhard Petracek gerhard.petra...@gmail.com
  
   hi thomas,
  
   you also need other dependencies like myfaces-test and the
   jsf-support-module.
   you can have a look e.g. at [1].
  
   regards,
   gerhard
  
   [1]
  
  
 
 http://code.google.com/a/apache-extras.org/p/myfaces-codi-examples/source/browse/community/pom.xml
  
   http://www.irian.at
  
   Your JSF powerhouse -
   JSF Consulting, Development and
   Courses in English and German
  
   Professional Support for Apache MyFaces
  
  
   2011/10/17 Thomas Andraschko zoi...@googlemail.com
  
Hi,
   
my junit tests extends from AbstractCdiAwareTest and i'm trying to
   inject
one of my DAO's.
The NPE occurs in
 TestContainerFactory.isServletContextAwareContainer
because testContainer is null.
   
Here is my list with depenedencies:
   
   artifactIdjunit/artifactId
   artifactIdcdi-api/artifactId
   artifactIdopenwebbeans-impl/artifactId
   artifactIdopenwebbeans-spi/artifactId
   artifactIdopenwebbeans-resource/artifactId
   artifactIdmyfaces-extcdi-core-api/artifactId
   artifactIdmyfaces-extcdi-core-impl/artifactId
   
artifactIdmyfaces-extcdi-base-test-infrastructure/artifactId
   
   artifactIdmyfaces-extcdi-junit-support-module/artifactId
   
  artifactIdmyfaces-extcdi-owb-support-module/artifactId
   
OWB 1.1.1, CODI 1.0.1, JUnit 4.6
   
How can i fix this?
   
Thanks and best regards
Thomas
   
  
  
  
 



Re: My Faces Tunning

2011-10-18 Thread Werner Punz
Still (I know it is not an option) but if you need to reduce session 
space JSF 2 is the way to go, the delta state saving can free a load of ram.


Werner


Am 10/17/11 10:58 PM, schrieb Scott O'Bryan:

Wow.. Looks like you've done a lot, but I personally think 5K is
unrealistic. Your right. Essentially JSF stores your component tree in
memory.

You MAY be able to enable client-side state saving which should free you
up some memory at the expense of storing the entire view tree on the
client. Additionally, a framework like orchestra or something home grown
may allow you to get rid of managed beans quicker.

One other thing. I don't know how Websphere works, but I know in the
case of WLS, it only serializes object when they are added to the
session. While this means they may need to be added again if they are
updated, it's not subject to this limitation your describing. I'm
wondering if WebSphere has some settings on the replication which might
get you some better results.

Scott

On 10/17/2011 02:16 PM, Boyd, David (Corporate) wrote:

All,



I am doing some investigation into how to shrink the amount of session
memory our JSF application is consuming on a per user basis.



We are using MyFaces 1.1.7 and Tomahawk 1.1.5 running on IBM Websphere
7.0 patch 19. (Not able to upgrade either of these items at this time)



IBM's guideline is that the session size should be less then 5k -
average around 2.5k in order not to impact performance of the server and
session replication. We are currently using Memory to Memory but
looking at moving to database as suggested by IBM.



Our site was running at about 35M per user. We changed the number of
view states from 100 to 10 and that dropped it down to around 4M.



We have several backing beans which are currently session scope and are
looking at changing them to request scope.



I also found the following:
http://www.econsulting.nl/images/pdf/Tuning%20JSF%20Applications-%20J-Sp
ring%202008.pdf which seems to have a lot of information concerning how
JSF handles certain content on the pages. This is still under
investigation to make sure what is stated make sense.



I have also read somewhere that regardless if the managed backing bean
is session or request scope is that the view state will still have the
bean and its content. So the view state size will not change. Looking
for clarification on this one.



The questions is are others facing the same issue in which JSF
applications tend to consume a lot of memory for a given users session?




What are some of the best practices to reduce this size if any or is
this just the way when using JSF?



Issues with session replication on IBM WebSphere when running a JSF
application?



What we see as a result of this is that in the event a user hops to
another server, the session data is not present due to how large the
data is and how long it takes to replicate. User experience issues.



We had seen an issue in which it appeared that changes to the object in
the session was not being updated correctly and have done some session
management tuning in which we customize the settings so that all session
attributes are written out. Looking at the .jar file it does appear
that myFaces is making the call correctly when the contents of the
object in the session changes. So WebSphere session listener should be
picking up that change.










RE: My Faces Tunning

2011-10-18 Thread Boyd, David (Corporate)
Scott,

With your comment below but do you feel is a more realistic targeted
size for session size with JSF?

All,

Based on some of the comments, is this not an issue for others that make
use of this Technology or did we basically implement it incorrectly -
from the way the .jsp are created to how we are managing the backing
beans?



-Original Message-
From: Scott O'Bryan [mailto:darkar...@gmail.com] 
Sent: Monday, October 17, 2011 4:58 PM
To: users@myfaces.apache.org
Subject: Re: My Faces Tunning

Wow..  Looks like you've done a lot, but I personally think 5K is 
unrealistic.  Your right.  Essentially JSF stores your component tree in

memory.

You MAY be able to enable client-side state saving which should free you

up some memory at the expense of storing the entire view tree on the 
client.  Additionally, a framework like orchestra or something home 
grown may allow you to get rid of managed beans quicker.

One other thing.  I don't know how Websphere works, but I know in the 
case of WLS, it only serializes object when they are added to the 
session.  While this means they may need to be added again if they are 
updated, it's not subject to this limitation your describing.  I'm 
wondering if WebSphere has some settings on the replication which might 
get you some better results.

Scott

On 10/17/2011 02:16 PM, Boyd, David (Corporate) wrote:
 All,



 I am doing some investigation into how to shrink the amount of session
 memory our JSF application is consuming on a per user basis.



 We are using MyFaces 1.1.7 and Tomahawk 1.1.5 running on IBM Websphere
 7.0 patch 19. (Not able to upgrade either of these items at this time)



 IBM's guideline is that the session size should be less then 5k -
 average around 2.5k in order not to impact performance of the server
and
 session replication.  We are currently using Memory to Memory but
 looking at moving to database as suggested by IBM.



 Our site was running at about 35M per user.  We changed the number of
 view states from 100 to 10 and that dropped it down to around 4M.



 We have several backing beans which are currently session scope and
are
 looking at changing them to request scope.



 I also found the following:

http://www.econsulting.nl/images/pdf/Tuning%20JSF%20Applications-%20J-Sp
 ring%202008.pdf which seems to have a lot of information concerning
how
 JSF handles certain content on the pages.  This is still under
 investigation to make sure what is stated make sense.



 I have also read somewhere that regardless if the managed backing bean
 is session or request scope is that the view state will still have the
 bean and its content.  So the view state size will not change.
Looking
 for clarification on this one.



 The questions is are others facing the same issue in which JSF
 applications tend to consume a lot of memory for a given users
session?




 What are some of the best practices to reduce this size if any or is
 this just the way when using JSF?



 Issues with session replication on IBM WebSphere when running a JSF
 application?



 What we see as a result of this is that in the event a user hops to
 another server, the session data is not present due to how large the
 data is and how long it takes to replicate.  User experience issues.



 We had seen an issue in which it appeared that changes to the object
in
 the session was not being updated correctly and have done some session
 management tuning in which we customize the settings so that all
session
 attributes are written out.  Looking at the .jar file it does appear
 that myFaces is making the call correctly when the contents of the
 object in the session changes.  So WebSphere session listener should
be
 picking up that change.





Re: My Faces Tunning

2011-10-18 Thread Tobias Eisentrager
David,

Usually memory is the problem - but sometimes there are also CPU problems -
you can run WebSphere for example on the Mainframe. Compared to a Linux Box
CPU time can be expensive there.

Are you running on a 64 bit Architecture? Memory is not that expensive these
days ;-)

What is you total memory usage?

Toby

On Tue, Oct 18, 2011 at 10:42 PM, Boyd, David (Corporate) 
david.b...@adesa.com wrote:

 Scott,

 With your comment below but do you feel is a more realistic targeted
 size for session size with JSF?

 All,

 Based on some of the comments, is this not an issue for others that make
 use of this Technology or did we basically implement it incorrectly -
 from the way the .jsp are created to how we are managing the backing
 beans?



 -Original Message-
 From: Scott O'Bryan [mailto:darkar...@gmail.com]
 Sent: Monday, October 17, 2011 4:58 PM
 To: users@myfaces.apache.org
 Subject: Re: My Faces Tunning

 Wow..  Looks like you've done a lot, but I personally think 5K is
 unrealistic.  Your right.  Essentially JSF stores your component tree in

 memory.

 You MAY be able to enable client-side state saving which should free you

 up some memory at the expense of storing the entire view tree on the
 client.  Additionally, a framework like orchestra or something home
 grown may allow you to get rid of managed beans quicker.

 One other thing.  I don't know how Websphere works, but I know in the
 case of WLS, it only serializes object when they are added to the
 session.  While this means they may need to be added again if they are
 updated, it's not subject to this limitation your describing.  I'm
 wondering if WebSphere has some settings on the replication which might
 get you some better results.

 Scott

 On 10/17/2011 02:16 PM, Boyd, David (Corporate) wrote:
  All,
 
 
 
  I am doing some investigation into how to shrink the amount of session
  memory our JSF application is consuming on a per user basis.
 
 
 
  We are using MyFaces 1.1.7 and Tomahawk 1.1.5 running on IBM Websphere
  7.0 patch 19. (Not able to upgrade either of these items at this time)
 
 
 
  IBM's guideline is that the session size should be less then 5k -
  average around 2.5k in order not to impact performance of the server
 and
  session replication.  We are currently using Memory to Memory but
  looking at moving to database as suggested by IBM.
 
 
 
  Our site was running at about 35M per user.  We changed the number of
  view states from 100 to 10 and that dropped it down to around 4M.
 
 
 
  We have several backing beans which are currently session scope and
 are
  looking at changing them to request scope.
 
 
 
  I also found the following:
 
 http://www.econsulting.nl/images/pdf/Tuning%20JSF%20Applications-%20J-Sp
  ring%202008.pdf which seems to have a lot of information concerning
 how
  JSF handles certain content on the pages.  This is still under
  investigation to make sure what is stated make sense.
 
 
 
  I have also read somewhere that regardless if the managed backing bean
  is session or request scope is that the view state will still have the
  bean and its content.  So the view state size will not change.
 Looking
  for clarification on this one.
 
 
 
  The questions is are others facing the same issue in which JSF
  applications tend to consume a lot of memory for a given users
 session?
 
 
 
 
  What are some of the best practices to reduce this size if any or is
  this just the way when using JSF?
 
 
 
  Issues with session replication on IBM WebSphere when running a JSF
  application?
 
 
 
  What we see as a result of this is that in the event a user hops to
  another server, the session data is not present due to how large the
  data is and how long it takes to replicate.  User experience issues.
 
 
 
  We had seen an issue in which it appeared that changes to the object
 in
  the session was not being updated correctly and have done some session
  management tuning in which we customize the settings so that all
 session
  attributes are written out.  Looking at the .jar file it does appear
  that myFaces is making the call correctly when the contents of the
  object in the session changes.  So WebSphere session listener should
 be
  picking up that change.
 
 




Re: My Faces Tunning

2011-10-18 Thread Mark Struberg
+1 mem is barely a problem these days.

Actually we are serving 60.000++ users per day without any mem problems (w 100 
views/session ServerSide-StateSaving).
We need some low GB mem on our 48GB RAM server...

Even if you have 1MB of session mem per user then you can serve tons of users.


LieGrue,
strub





From: Tobias Eisentrager teisentrae...@googlemail.com
To: MyFaces Discussion users@myfaces.apache.org
Sent: Tuesday, October 18, 2011 10:46 PM
Subject: Re: My Faces Tunning

David,

Usually memory is the problem - but sometimes there are also CPU problems -
you can run WebSphere for example on the Mainframe. Compared to a Linux Box
CPU time can be expensive there.

Are you running on a 64 bit Architecture? Memory is not that expensive these
days ;-)

What is you total memory usage?

Toby

On Tue, Oct 18, 2011 at 10:42 PM, Boyd, David (Corporate) 
david.b...@adesa.com wrote:

 Scott,

 With your comment below but do you feel is a more realistic targeted
 size for session size with JSF?

 All,

 Based on some of the comments, is this not an issue for others that make
 use of this Technology or did we basically implement it incorrectly -
 from the way the .jsp are created to how we are managing the backing
 beans?



 -Original Message-
 From: Scott O'Bryan [mailto:darkar...@gmail.com]
 Sent: Monday, October 17, 2011 4:58 PM
 To: users@myfaces.apache.org
 Subject: Re: My Faces Tunning

 Wow..  Looks like you've done a lot, but I personally think 5K is
 unrealistic.  Your right.  Essentially JSF stores your component tree in

 memory.

 You MAY be able to enable client-side state saving which should free you

 up some memory at the expense of storing the entire view tree on the
 client.  Additionally, a framework like orchestra or something home
 grown may allow you to get rid of managed beans quicker.

 One other thing.  I don't know how Websphere works, but I know in the
 case of WLS, it only serializes object when they are added to the
 session.  While this means they may need to be added again if they are
 updated, it's not subject to this limitation your describing.  I'm
 wondering if WebSphere has some settings on the replication which might
 get you some better results.

 Scott

 On 10/17/2011 02:16 PM, Boyd, David (Corporate) wrote:
  All,
 
 
 
  I am doing some investigation into how to shrink the amount of session
  memory our JSF application is consuming on a per user basis.
 
 
 
  We are using MyFaces 1.1.7 and Tomahawk 1.1.5 running on IBM Websphere
  7.0 patch 19. (Not able to upgrade either of these items at this time)
 
 
 
  IBM's guideline is that the session size should be less then 5k -
  average around 2.5k in order not to impact performance of the server
 and
  session replication.  We are currently using Memory to Memory but
  looking at moving to database as suggested by IBM.
 
 
 
  Our site was running at about 35M per user.  We changed the number of
  view states from 100 to 10 and that dropped it down to around 4M.
 
 
 
  We have several backing beans which are currently session scope and
 are
  looking at changing them to request scope.
 
 
 
  I also found the following:
 
 http://www.econsulting.nl/images/pdf/Tuning%20JSF%20Applications-%20J-Sp
  ring%202008.pdf which seems to have a lot of information concerning
 how
  JSF handles certain content on the pages.  This is still under
  investigation to make sure what is stated make sense.
 
 
 
  I have also read somewhere that regardless if the managed backing bean
  is session or request scope is that the view state will still have the
  bean and its content.  So the view state size will not change.
 Looking
  for clarification on this one.
 
 
 
  The questions is are others facing the same issue in which JSF
  applications tend to consume a lot of memory for a given users
 session?
 
 
 
 
  What are some of the best practices to reduce this size if any or is
  this just the way when using JSF?
 
 
 
  Issues with session replication on IBM WebSphere when running a JSF
  application?
 
 
 
  What we see as a result of this is that in the event a user hops to
  another server, the session data is not present due to how large the
  data is and how long it takes to replicate.  User experience issues.
 
 
 
  We had seen an issue in which it appeared that changes to the object
 in
  the session was not being updated correctly and have done some session
  management tuning in which we customize the settings so that all
 session
  attributes are written out.  Looking at the .jar file it does appear
  that myFaces is making the call correctly when the contents of the
  object in the session changes.  So WebSphere session listener should
 be
  picking up that change.
 
 







Re: My Faces Tunning

2011-10-18 Thread Boyd, David (Corporate)
We are running under Red Hat with WebSphere 7 64-Bit. 

Currently heap is set to 8 G.  The issue seems to be around the ability of the 
server to replicate the data across all the servers.  We get complaints from 
the users of lost information during a server hop

Thanks
-David Boyd

(Sent via BlackBerry)

- Original Message -
From: Tobias Eisentrager [mailto:teisentrae...@googlemail.com]
Sent: Tuesday, October 18, 2011 04:46 PM
To: MyFaces Discussion users@myfaces.apache.org
Subject: Re: My Faces Tunning

David,

Usually memory is the problem - but sometimes there are also CPU problems -
you can run WebSphere for example on the Mainframe. Compared to a Linux Box
CPU time can be expensive there.

Are you running on a 64 bit Architecture? Memory is not that expensive these
days ;-)

What is you total memory usage?

Toby

On Tue, Oct 18, 2011 at 10:42 PM, Boyd, David (Corporate) 
david.b...@adesa.com wrote:

 Scott,

 With your comment below but do you feel is a more realistic targeted
 size for session size with JSF?

 All,

 Based on some of the comments, is this not an issue for others that make
 use of this Technology or did we basically implement it incorrectly -
 from the way the .jsp are created to how we are managing the backing
 beans?



 -Original Message-
 From: Scott O'Bryan [mailto:darkar...@gmail.com]
 Sent: Monday, October 17, 2011 4:58 PM
 To: users@myfaces.apache.org
 Subject: Re: My Faces Tunning

 Wow..  Looks like you've done a lot, but I personally think 5K is
 unrealistic.  Your right.  Essentially JSF stores your component tree in

 memory.

 You MAY be able to enable client-side state saving which should free you

 up some memory at the expense of storing the entire view tree on the
 client.  Additionally, a framework like orchestra or something home
 grown may allow you to get rid of managed beans quicker.

 One other thing.  I don't know how Websphere works, but I know in the
 case of WLS, it only serializes object when they are added to the
 session.  While this means they may need to be added again if they are
 updated, it's not subject to this limitation your describing.  I'm
 wondering if WebSphere has some settings on the replication which might
 get you some better results.

 Scott

 On 10/17/2011 02:16 PM, Boyd, David (Corporate) wrote:
  All,
 
 
 
  I am doing some investigation into how to shrink the amount of session
  memory our JSF application is consuming on a per user basis.
 
 
 
  We are using MyFaces 1.1.7 and Tomahawk 1.1.5 running on IBM Websphere
  7.0 patch 19. (Not able to upgrade either of these items at this time)
 
 
 
  IBM's guideline is that the session size should be less then 5k -
  average around 2.5k in order not to impact performance of the server
 and
  session replication.  We are currently using Memory to Memory but
  looking at moving to database as suggested by IBM.
 
 
 
  Our site was running at about 35M per user.  We changed the number of
  view states from 100 to 10 and that dropped it down to around 4M.
 
 
 
  We have several backing beans which are currently session scope and
 are
  looking at changing them to request scope.
 
 
 
  I also found the following:
 
 http://www.econsulting.nl/images/pdf/Tuning%20JSF%20Applications-%20J-Sp
  ring%202008.pdf which seems to have a lot of information concerning
 how
  JSF handles certain content on the pages.  This is still under
  investigation to make sure what is stated make sense.
 
 
 
  I have also read somewhere that regardless if the managed backing bean
  is session or request scope is that the view state will still have the
  bean and its content.  So the view state size will not change.
 Looking
  for clarification on this one.
 
 
 
  The questions is are others facing the same issue in which JSF
  applications tend to consume a lot of memory for a given users
 session?
 
 
 
 
  What are some of the best practices to reduce this size if any or is
  this just the way when using JSF?
 
 
 
  Issues with session replication on IBM WebSphere when running a JSF
  application?
 
 
 
  What we see as a result of this is that in the event a user hops to
  another server, the session data is not present due to how large the
  data is and how long it takes to replicate.  User experience issues.
 
 
 
  We had seen an issue in which it appeared that changes to the object
 in
  the session was not being updated correctly and have done some session
  management tuning in which we customize the settings so that all
 session
  attributes are written out.  Looking at the .jar file it does appear
  that myFaces is making the call correctly when the contents of the
  object in the session changes.  So WebSphere session listener should
 be
  picking up that change.
 
 




Re: My Faces Tunning

2011-10-18 Thread Boyd, David (Corporate)
We tend to run higher sizes for our users. Currently running at 4M but as high 
as 25M.  

But it is good to see some real numbers and possible targets/guidelines that we 
should be shooting for.  



Thanks
-David Boyd

(Sent via BlackBerry)

- Original Message -
From: Mark Struberg [mailto:strub...@yahoo.de]
Sent: Tuesday, October 18, 2011 04:58 PM
To: MyFaces Discussion users@myfaces.apache.org
Subject: Re: My Faces Tunning

+1 mem is barely a problem these days.

Actually we are serving 60.000++ users per day without any mem problems (w 100 
views/session ServerSide-StateSaving).
We need some low GB mem on our 48GB RAM server...

Even if you have 1MB of session mem per user then you can serve tons of users.


LieGrue,
strub





From: Tobias Eisentrager teisentrae...@googlemail.com
To: MyFaces Discussion users@myfaces.apache.org
Sent: Tuesday, October 18, 2011 10:46 PM
Subject: Re: My Faces Tunning

David,

Usually memory is the problem - but sometimes there are also CPU problems -
you can run WebSphere for example on the Mainframe. Compared to a Linux Box
CPU time can be expensive there.

Are you running on a 64 bit Architecture? Memory is not that expensive these
days ;-)

What is you total memory usage?

Toby

On Tue, Oct 18, 2011 at 10:42 PM, Boyd, David (Corporate) 
david.b...@adesa.com wrote:

 Scott,

 With your comment below but do you feel is a more realistic targeted
 size for session size with JSF?

 All,

 Based on some of the comments, is this not an issue for others that make
 use of this Technology or did we basically implement it incorrectly -
 from the way the .jsp are created to how we are managing the backing
 beans?



 -Original Message-
 From: Scott O'Bryan [mailto:darkar...@gmail.com]
 Sent: Monday, October 17, 2011 4:58 PM
 To: users@myfaces.apache.org
 Subject: Re: My Faces Tunning

 Wow..  Looks like you've done a lot, but I personally think 5K is
 unrealistic.  Your right.  Essentially JSF stores your component tree in

 memory.

 You MAY be able to enable client-side state saving which should free you

 up some memory at the expense of storing the entire view tree on the
 client.  Additionally, a framework like orchestra or something home
 grown may allow you to get rid of managed beans quicker.

 One other thing.  I don't know how Websphere works, but I know in the
 case of WLS, it only serializes object when they are added to the
 session.  While this means they may need to be added again if they are
 updated, it's not subject to this limitation your describing.  I'm
 wondering if WebSphere has some settings on the replication which might
 get you some better results.

 Scott

 On 10/17/2011 02:16 PM, Boyd, David (Corporate) wrote:
  All,
 
 
 
  I am doing some investigation into how to shrink the amount of session
  memory our JSF application is consuming on a per user basis.
 
 
 
  We are using MyFaces 1.1.7 and Tomahawk 1.1.5 running on IBM Websphere
  7.0 patch 19. (Not able to upgrade either of these items at this time)
 
 
 
  IBM's guideline is that the session size should be less then 5k -
  average around 2.5k in order not to impact performance of the server
 and
  session replication.  We are currently using Memory to Memory but
  looking at moving to database as suggested by IBM.
 
 
 
  Our site was running at about 35M per user.  We changed the number of
  view states from 100 to 10 and that dropped it down to around 4M.
 
 
 
  We have several backing beans which are currently session scope and
 are
  looking at changing them to request scope.
 
 
 
  I also found the following:
 
 http://www.econsulting.nl/images/pdf/Tuning%20JSF%20Applications-%20J-Sp
  ring%202008.pdf which seems to have a lot of information concerning
 how
  JSF handles certain content on the pages.  This is still under
  investigation to make sure what is stated make sense.
 
 
 
  I have also read somewhere that regardless if the managed backing bean
  is session or request scope is that the view state will still have the
  bean and its content.  So the view state size will not change.
 Looking
  for clarification on this one.
 
 
 
  The questions is are others facing the same issue in which JSF
  applications tend to consume a lot of memory for a given users
 session?
 
 
 
 
  What are some of the best practices to reduce this size if any or is
  this just the way when using JSF?
 
 
 
  Issues with session replication on IBM WebSphere when running a JSF
  application?
 
 
 
  What we see as a result of this is that in the event a user hops to
  another server, the session data is not present due to how large the
  data is and how long it takes to replicate.  User experience issues.
 
 
 
  We had seen an issue in which it appeared that changes to the object
 in
  the session was not being updated correctly and have done some session
  management tuning in which we customize the settings so that all
 session
  attributes are written 

is i18n messages suppose to be html escaped?

2011-10-18 Thread Ted
I'm using string tables and to i18n some messages using jsf and I've got
some unexpected behavior

if I have a string table

string1=boldasdf/bold
string2=my cow is brown

if I then go on to a jsf page and do

#{msg.string1}
#{msg.string2}

the result I get is

lt;boldgt;asdflt;/boldgt;
my cow is brown

My expectation is that the quote should have been converted to quot;
shouldn't it? (either that or at least the 's should not have been
escaped...)

anyone know anything about this?
-- 
Ted.


Re: is i18n messages suppose to be html escaped?

2011-10-18 Thread Kito Mann
Ted,

The strings will only be escaped if the component you're using escapes the
text. If you're just embedding the expression in the page, it's not going to
be escaped, but you can use h:outputText -- this allows you to control
whether or not you want the text escaped.
---
Kito D. Mann | twitter: kito99 | Author, JSF in Action
Virtua, Inc. | http://www.virtua.com | JSF/Java EE training and consulting
http://www.JSFCentral.com - JavaServer Faces FAQ, news, and info | twitter:
jsfcentral
+1 203-404-4848 x3

* Listen to the latest headlines in the JSF and Java EE newscast:
http://blogs.jsfcentral.com/roller/editorsdesk/category/JSF+and+Java+EE+Newscast
* Keep up with the aftermath of the Oracle/Sun merger:
http://www.mergerspeak.com



On Tue, Oct 18, 2011 at 11:36 PM, Ted r6squee...@gmail.com wrote:

 I'm using string tables and to i18n some messages using jsf and I've got
 some unexpected behavior

 if I have a string table

 string1=boldasdf/bold
 string2=my cow is brown

 if I then go on to a jsf page and do

 #{msg.string1}
 #{msg.string2}

 the result I get is

 lt;boldgt;asdflt;/boldgt;
 my cow is brown

 My expectation is that the quote should have been converted to quot;
 shouldn't it? (either that or at least the 's should not have been
 escaped...)

 anyone know anything about this?
 --
 Ted.