You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by we...@apache.org on 2009/09/23 13:10:37 UTC
svn commit: r818056 - in /myfaces/extensions/scripting/trunk:
core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf2/annotation/
examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/
Author: werpu
Date: Wed Sep 23 11:10:37 2009
New Revision: 818056
URL: http://svn.apache.org/viewvc?rev=818056&view=rev
Log:
https://issues.apache.org/jira/browse/EXTSCRIPT-18
adding scope handling to the managed bean listener
Modified:
myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf2/annotation/BeanImplementationListener.java
myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java
Modified: myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf2/annotation/BeanImplementationListener.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf2/annotation/BeanImplementationListener.java?rev=818056&r1=818055&r2=818056&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf2/annotation/BeanImplementationListener.java (original)
+++ myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf2/annotation/BeanImplementationListener.java Wed Sep 23 11:10:37 2009
@@ -63,11 +63,29 @@
mbean.setBeanClass(clazz.getName());
mbean.setName(beanName);
handleManagedpropertiesCompiled(mbean, fields(clazz));
+ resolveScope(clazz, mbean);
_alreadyRegistered.put(beanName, mbean);
config.addManagedBean(beanName, mbean);
}
+ private void resolveScope(Class clazz, ManagedBean mbean) {
+ //now lets resolve the scope
+ String scope = "none";
+ if (clazz.isAnnotationPresent(RequestScoped.class)) {
+ scope = "request";
+ } else if (clazz.isAnnotationPresent(SessionScoped.class)) {
+ scope = "session";
+ } else if (clazz.isAnnotationPresent(ApplicationScoped.class)) {
+ scope = "application";
+ } else if (clazz.isAnnotationPresent(NoneScoped.class)) {
+ scope = "none";
+ } else if (clazz.isAnnotationPresent(CustomScoped.class)) {
+ scope = "custom";
+ }
+ mbean.setScope(scope);
+ }
+
/**
* reregistration strategy:
@@ -96,25 +114,33 @@
handleManagedproperties(mbean, fields(clazz));
_alreadyRegistered.put(beanName, mbean);
//find the scope
+ resolveScope(clazz, mbean);
+
+ config.addManagedBean(beanName, mbean);
+ }
+
+ private void resolveScope(JavaClass clazz, ManagedBean mbean) {
Annotation[] anns = clazz.getAnnotations();
for (Annotation ann : anns) {
- if (ann.getType().getValue().equals(RequestScoped.class.getName())) {
+ String scopeType = ann.getType().getValue();
+
+ if (scopeType.equals(RequestScoped.class.getName())) {
mbean.setScope("request");
break;
- } else if (ann.getType().getValue().equals(SessionScoped.class.getName())) {
+ } else if (scopeType.equals(SessionScoped.class.getName())) {
mbean.setScope(SCOPE_SESSION);
break;
- } else if (ann.getType().getValue().equals(ApplicationScoped.class.getName())) {
+ } else if (scopeType.equals(ApplicationScoped.class.getName())) {
mbean.setScope(SCOPE_APPLICATION);
break;
- } else if (ann.getType().getValue().equals(ViewScoped.class.getName())) {
+ } else if (scopeType.equals(ViewScoped.class.getName())) {
mbean.setScope(SCOPE_VIEW);
break;
- } else if (ann.getType().getValue().equals(NoneScoped.class.getName())) {
+ } else if (scopeType.equals(NoneScoped.class.getName())) {
mbean.setScope(SCOPE_NONE);
break;
- } else if (ann.getType().getValue().equals(CustomScoped.class.getName())) {
+ } else if (scopeType.equals(CustomScoped.class.getName())) {
//TODO find out how to handle custom scope values
mbean.setScope(SCOPE_CUSTOM);
break;
@@ -124,8 +150,6 @@
if (mbean.getManagedBeanScope() == null) {
mbean.setScope(SCOPE_NONE);
}
-
- config.addManagedBean(beanName, mbean);
}
Modified: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java?rev=818056&r1=818055&r2=818056&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java (original)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java Wed Sep 23 11:10:37 2009
@@ -6,13 +6,14 @@
@ManagedBean (name="javatestbean")
+@RequestScoped
public class TestBean2 {
String sayHello = "hello worldgggg";
String hello2 = "hello from added attribute";
String hello3 = "hello from added attribute 2";
public String getSayHello() {
- return "sss Java dynamic bean - "+TestClass2.hello2 + hello3;
+ return "Java dynamic bean - "+TestClass2.hello2 + hello3;
}
public String getSayHello2() {