Dispatch: ca plante pu mais ca fait rien de spécial pr l'instant

This commit is contained in:
Frederic Debuire
2008-02-04 21:27:13 +00:00
parent 46c2757063
commit bf7cbab71a
3 changed files with 273 additions and 257 deletions

View File

@@ -3,7 +3,9 @@
<html> <html>
<head></head> <head></head>
<body> <body>
<form:form commandName="formDispatcher">
<table> <table>
<tr> <tr>
<th>articles to dispatch</th><th>members</th><th>members associate to the article</th> <th>articles to dispatch</th><th>members</th><th>members associate to the article</th>
@@ -19,8 +21,9 @@
</tr> </tr>
</table> </table>
</td> </td>
<td> <td>
<form:form commandName="formDispatcher">
<input name="idArticle" type="hidden" value="${article.id}" /> <input name="idArticle" type="hidden" value="${article.id}" />
@@ -33,7 +36,8 @@
</form:select> </form:select>
<input type="submit" value="add" /> <input type="submit" value="add" />
</form:form>
</td> </td>
<td> <td>
<center>list is empty !</center> <center>list is empty !</center>
@@ -47,7 +51,7 @@
</c:forEach> </c:forEach>
</table> </table>
</form:form>
</body> </body>
</html> </html>

View File

@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" <beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:flow="http://www.springframework.org/schema/webflow-config" xmlns:flow="http://www.springframework.org/schema/webflow-config"
xmlns:dwr="http://www.directwebremoting.org/schema/spring-dwr" xmlns:dwr="http://www.directwebremoting.org/schema/spring-dwr"
xmlns:jee="http://www.springframework.org/schema/jee" xmlns:jee="http://www.springframework.org/schema/jee"
xmlns:lang="http://www.springframework.org/schema/lang" xmlns:lang="http://www.springframework.org/schema/lang"
xmlns:util="http://www.springframework.org/schema/util" xmlns:util="http://www.springframework.org/schema/util"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/webflow-config http://www.springframework.org/schema/webflow-config/spring-webflow-config-1.0.xsd http://www.springframework.org/schema/webflow-config http://www.springframework.org/schema/webflow-config/spring-webflow-config-1.0.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-2.0.xsd http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-2.0.xsd
@@ -17,239 +17,242 @@
<!-- the application context definition for the SiteWebSpring DispatcherServlet --> <!-- the application context definition for the SiteWebSpring DispatcherServlet -->
<bean <bean
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings"> <property name="mappings">
<props> <props>
<prop key="/main.htm">MainController</prop> <prop key="/main.htm">MainController</prop>
<prop key="/submissionArticleOK.htm"> <prop key="/submissionArticleOK.htm">
SArticleControllerOK SArticleControllerOK
</prop> </prop>
<prop key="/listArticle.htm"> <prop key="/listArticle.htm">
ListArticleController ListArticleController
</prop> </prop>
<prop key="/registerUser.htm"> <prop key="/registerUser.htm">
SUserRegistrationController SUserRegistrationController
</prop> </prop>
<prop key="/submissionArticle.htm"> <prop key="/submissionArticle.htm">
SArticleController SArticleController
</prop> </prop>
<prop key="/choosePreference.htm"> <prop key="/choosePreference.htm">
ChoosePreferenceController ChoosePreferenceController
</prop> </prop>
<prop key="/dispatchArticle.htm"> <prop key="/dispatchArticle.htm">
DispatchArticleController DispatchArticleController
</prop> </prop>
<prop key="/addConference.htm"> <prop key="/addConference.htm">
AddConferenceController AddConferenceController
</prop> </prop>
<prop key="/evaluation.htm">EvaluationController</prop> <prop key="/evaluation.htm">EvaluationController</prop>
<prop key="/createReport.htm"> <prop key="/createReport.htm">
CreateReportController CreateReportController
</prop> </prop>
<prop key="/listConference.htm"> <prop key="/listConference.htm">
ListConferenceController ListConferenceController
</prop> </prop>
<prop key="/chooseConference.htm"> <prop key="/chooseConference.htm">
ChooseConferenceController ChooseConferenceController
</prop> </prop>
<prop key="/validateArticle.htm"> <prop key="/validateArticle.htm">
ValidateArticleController ValidateArticleController
</prop> </prop>
<prop key="/valideOrReject.htm"> <prop key="/valideOrReject.htm">
ValideOrRejectController ValideOrRejectController
</prop> </prop>
<prop key="/login.htm"> <prop key="/login.htm">LogonController</prop>
LogonController </props>
</prop> </property>
</props> </bean>
</property>
</bean> <bean id="MainController"
class="org.yacos.web.author.controller.MainController" />
<bean id="MainController"
class="org.yacos.web.author.controller.MainController" /> <bean id="SArticleControllerOK"
class="org.yacos.web.author.controller.SArticleControllerOK" />
<bean id="SArticleControllerOK"
class="org.yacos.web.author.controller.SArticleControllerOK" /> <bean id="ListArticleController"
class="org.yacos.web.PCmember.controller.ListArticleController">
<bean id="ListArticleController"
class="org.yacos.web.PCmember.controller.ListArticleController">
<property name="articleManager" ref="articleManager" />
</bean>
<bean id="SUserRegistrationController"
class="org.yacos.web.system.controller.SUserRegistrationController">
<property name="sessionForm" value="true" />
<property name="commandName" value="registerUser" />
<property name="commandClass" value="org.yacos.web.system.form.FormUser" />
<property name="formView" value="registerUser" />
<property name="successView" value="listArticle.htm" />
<property name="userManager" ref="userManager" />
</bean>
<bean id="SArticleController"
class="org.yacos.web.author.controller.SArticleController">
<property name="sessionForm" value="true" />
<property name="commandName" value="submissionArticle" />
<property name="commandClass"
value="org.yacos.web.author.form.FormSubmission" />
<property name="formView" value="submissionArticle" />
<property name="successView" value="listArticle.htm" />
<property name="articleManager" ref="articleManager" /> <property name="articleManager" ref="articleManager" />
<property name="validator" ref="submissionCheck"/>
</bean> </bean>
<bean id="submissionCheck" class="org.yacos.web.author.validator.ValidateSubmission"> <bean id="SUserRegistrationController"
</bean> class="org.yacos.web.system.controller.SUserRegistrationController">
<property name="sessionForm" value="true" />
<bean id="ChoosePreferenceController" <property name="commandName" value="registerUser" />
class="org.yacos.web.PCmember.controller.ChoosePreferenceController"> <property name="commandClass"
<property name="sessionForm" value="true" /> value="org.yacos.web.system.form.FormUser" />
<property name="commandName" value="choosePreference" /> <property name="formView" value="registerUser" />
<property name="commandClass" <property name="successView" value="listArticle.htm" />
value="org.yacos.web.PCmember.form.FormPreference" /> <property name="userManager" ref="userManager" />
<property name="formView" value="choosePreference" />
<property name="successView" value="choosePreference.htm" />
<property name="articleManager" ref="articleManager" />
<property name="userManager" ref="userManager" />
<property name="conferenceManager" ref="conferenceManager" />
</bean> </bean>
<bean id="SArticleController"
class="org.yacos.web.author.controller.SArticleController">
<property name="sessionForm" value="true" />
<property name="commandName" value="submissionArticle" />
<property name="commandClass"
value="org.yacos.web.author.form.FormSubmission" />
<property name="formView" value="submissionArticle" />
<property name="successView" value="listArticle.htm" />
<property name="articleManager" ref="articleManager" />
<property name="validator" ref="submissionCheck" />
</bean>
<bean id="submissionCheck"
class="org.yacos.web.author.validator.ValidateSubmission">
</bean>
<bean id="ChoosePreferenceController"
class="org.yacos.web.PCmember.controller.ChoosePreferenceController">
<property name="sessionForm" value="true" />
<property name="commandName" value="choosePreference" />
<property name="commandClass"
value="org.yacos.web.PCmember.form.FormPreference" />
<property name="formView" value="choosePreference" />
<property name="successView" value="choosePreference.htm" />
<property name="articleManager" ref="articleManager" />
<property name="userManager" ref="userManager" />
<property name="conferenceManager" ref="conferenceManager" />
</bean>
<bean id="ValidateArticleController" <bean id="ValidateArticleController"
class="org.yacos.web.PCmember.controller.ValidateArticleController"> class="org.yacos.web.PCmember.controller.ValidateArticleController">
<property name="formView" value="validateArticle" /> <property name="formView" value="validateArticle" />
<property name="articleManager" ref="articleManager" /> <property name="articleManager" ref="articleManager" />
</bean> </bean>
<bean id="ValideOrRejectController" <bean id="ValideOrRejectController"
class="org.yacos.web.PCmember.controller.ValideOrRejectController"> class="org.yacos.web.PCmember.controller.ValideOrRejectController">
<property name="articleManager" ref="articleManager" /> <property name="articleManager" ref="articleManager" />
</bean> </bean>
<bean id="DispatchArticleController"
class="org.yacos.web.chairman.controller.DispatchArticleController"> <bean id="DispatchArticleController"
<property name="sessionForm" value="true" /> class="org.yacos.web.chairman.controller.DispatchArticleController">
<property name="commandName" value="formDispatcher" /> <property name="sessionForm" value="true" />
<property name="commandClass" <property name="commandName" value="formDispatcher" />
value="org.yacos.web.PCmember.form.FormDispatcher" /> <property name="commandClass"
<property name="formView" value="dispatchArticle" /> value="org.yacos.web.PCmember.form.FormDispatcher" />
<property name="successView" value="dispatchArticle.htm" /> <property name="formView" value="dispatchArticle" />
<property name="successView" value="dispatchArticle.htm" />
<property name="articleManager" ref="articleManager" /> <property name="articleManager" ref="articleManager" />
<property name="userManager" ref="userManager" /> <property name="userManager" ref="userManager" />
<property name="conferenceManager" ref="conferenceManager" />
</bean>
<bean id="AddConferenceController"
class="org.yacos.web.chairman.controller.AddConferenceController">
<dwr:remote javascript="AddCriteriaJS" />
<property name="sessionForm" value="true" />
<property name="commandName" value="formConference" />
<property name="commandClass"
value="org.yacos.web.chairman.form.FormConference" />
<property name="conferenceManager" ref="conferenceManager" />
<property name="userManager" ref="userManager" />
<property name="validator" ref="ConferenceValidator"/>
</bean>
<bean id="ConferenceValidator" class="org.yacos.web.chairman.validation.ConferenceValidator">
</bean>
<bean id="EvaluationController"
class="org.yacos.web.PCmember.controller.EvaluationController">
<property name="sessionForm" value="true" />
<property name="commandName" value="evaluationForm" />
<property name="commandClass"
value="org.yacos.web.PCmember.form.FormEvaluation" />
<property name="formView" value="evaluation" />
<property name="successView" value="createReport.htm" />
<property name="articleManager" ref="articleManager" />
<property name="userManager" ref="userManager" />
<property name="conferenceManager" ref="conferenceManager" /> <property name="conferenceManager" ref="conferenceManager" />
<property name="evaluationManager" ref="evaluationManager" /> </bean>
</bean>
<bean id="AddConferenceController"
<bean id="CreateReportController" class="org.yacos.web.chairman.controller.AddConferenceController">
class="org.yacos.web.PCmember.controller.CreateReportController"> <dwr:remote javascript="AddCriteriaJS" />
<property name="sessionForm" value="true" />
<property name="articleManager" ref="articleManager" /> <property name="commandName" value="formConference" />
</bean> <property name="commandClass"
value="org.yacos.web.chairman.form.FormConference" />
<bean id="LogonController" class="org.yacos.web.system.controller.LogonController"> <property name="conferenceManager" ref="conferenceManager" />
</bean> <property name="userManager" ref="userManager" />
<property name="validator" ref="ConferenceValidator" />
<!-- List all conference --> </bean>
<bean id="ListConferenceController"
class="org.yacos.web.system.controller.ListConferenceController"> <bean id="ConferenceValidator"
<property name="conferenceManager" ref="conferenceManager" /> class="org.yacos.web.chairman.validation.ConferenceValidator">
</bean> </bean>
<!-- Get chosen conference in session context --> <bean id="EvaluationController"
<bean id="ChooseConferenceController" class="org.yacos.web.PCmember.controller.EvaluationController">
class="org.yacos.web.system.controller.ChooseConferenceController"> <property name="sessionForm" value="true" />
</bean> <property name="commandName" value="evaluationForm" />
<property name="commandClass"
value="org.yacos.web.PCmember.form.FormEvaluation" />
<bean id="dwrUrlMapping" <property name="formView" value="evaluation" />
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="successView" value="createReport.htm" />
<property name="alwaysUseFullPath" value="true" /> <property name="articleManager" ref="articleManager" />
<property name="mappings"> <property name="userManager" ref="userManager" />
<props> <property name="conferenceManager" ref="conferenceManager" />
<prop key="/dwr/**/*">dwrController</prop> <property name="evaluationManager" ref="evaluationManager" />
</props> </bean>
</property>
</bean> <bean id="CreateReportController"
class="org.yacos.web.PCmember.controller.CreateReportController">
<dwr:controller id="dwrController" debug="true"></dwr:controller>
<dwr:configuration> <property name="articleManager" ref="articleManager" />
<dwr:convert type="bean" </bean>
class="org.yacos.web.chairman.form.FormConference">
</dwr:convert> <bean id="LogonController"
class="org.yacos.web.system.controller.LogonController">
<dwr:convert type="bean" </bean>
class="org.yacos.web.chairman.controller.CriterionBean">
</dwr:convert> <!-- List all conference -->
<bean id="ListConferenceController"
<dwr:convert type="bean" class="org.yacos.web.system.controller.ListConferenceController">
class="org.yacos.web.chairman.controller.PersonBean"> <property name="conferenceManager" ref="conferenceManager" />
</dwr:convert> </bean>
<dwr:convert type="bean" class="java.lang.StackTraceElement"></dwr:convert> <!-- Get chosen conference in session context -->
<dwr:convert type="exception" class="java.lang.exception"></dwr:convert> <bean id="ChooseConferenceController"
class="org.yacos.web.system.controller.ChooseConferenceController">
</dwr:configuration> </bean>
<!-- View Resolver -->
<bean id="viewResolver" <bean id="dwrUrlMapping"
class="org.springframework.web.servlet.view.InternalResourceViewResolver"> class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="viewClass" <property name="alwaysUseFullPath" value="true" />
value="org.springframework.web.servlet.view.JstlView"> <property name="mappings">
</property> <props>
<property name="prefix" value="/WEB-INF/jsp/"></property> <prop key="/dwr/**/*">dwrController</prop>
<property name="suffix" value=".jsp"></property> </props>
</bean> </property>
</bean>
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <dwr:controller id="dwrController" debug="true"></dwr:controller>
<property name="maxUploadSize" value="10000000" /> <dwr:configuration>
</bean> <dwr:convert type="bean"
class="org.yacos.web.chairman.form.FormConference">
<bean id="messageSource" </dwr:convert>
class="org.springframework.context.support.ResourceBundleMessageSource">
<property name="basename" value="messages" /> <dwr:convert type="bean"
</bean> class="org.yacos.web.chairman.controller.CriterionBean">
</dwr:convert>
<bean id="sessionService"
class="org.yacos.web.system.session.SessionService"> <dwr:convert type="bean"
<property name="conferenceManager" ref="conferenceManager" /> class="org.yacos.web.chairman.controller.PersonBean">
<property name="userManager" ref="userManager" /> </dwr:convert>
</bean>
<dwr:convert type="bean" class="java.lang.StackTraceElement"></dwr:convert>
<!-- EJB Services Linking --> <dwr:convert type="exception" class="java.lang.exception"></dwr:convert>
<jee:jndi-lookup id="articleManager"
jndi-name="ArticleManagerBean/remote" cache="true" /> </dwr:configuration>
<jee:jndi-lookup id="userManager"
jndi-name="UserManagerBean/remote" cache="true" /> <!-- View Resolver -->
<jee:jndi-lookup id="conferenceManager" <bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass"
value="org.springframework.web.servlet.view.JstlView">
</property>
<property name="prefix" value="/WEB-INF/jsp/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="10000000" />
</bean>
<bean id="messageSource"
class="org.springframework.context.support.ResourceBundleMessageSource">
<property name="basename" value="messages" />
</bean>
<bean id="sessionService"
class="org.yacos.web.system.session.SessionService">
<property name="conferenceManager" ref="conferenceManager" />
<property name="userManager" ref="userManager" />
</bean>
<!-- EJB Services Linking -->
<jee:jndi-lookup id="articleManager"
jndi-name="ArticleManagerBean/remote" cache="true" />
<jee:jndi-lookup id="userManager" jndi-name="UserManagerBean/remote"
cache="true" />
<jee:jndi-lookup id="conferenceManager"
jndi-name="ConferenceManagerBean/remote" cache="true" /> jndi-name="ConferenceManagerBean/remote" cache="true" />
<jee:jndi-lookup id="evaluationManager" <jee:jndi-lookup id="evaluationManager"
jndi-name="EvaluationManagerBean/remote" cache="true" /> jndi-name="EvaluationManagerBean/remote" cache="true" />
</beans> </beans>

View File

@@ -1,6 +1,5 @@
package org.yacos.web.chairman.controller; package org.yacos.web.chairman.controller;
import java.util.ArrayList;
import java.util.Collection; import java.util.Collection;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
@@ -14,7 +13,6 @@ import org.springframework.validation.BindException;
import org.springframework.validation.Errors; import org.springframework.validation.Errors;
import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController; import org.springframework.web.servlet.mvc.SimpleFormController;
import org.yacos.core.article.Article;
import org.yacos.core.article.IArticleManager; import org.yacos.core.article.IArticleManager;
import org.yacos.core.conferences.Conference; import org.yacos.core.conferences.Conference;
import org.yacos.core.conferences.IConferenceManager; import org.yacos.core.conferences.IConferenceManager;
@@ -28,7 +26,7 @@ import org.yacos.web.system.session.SessionService;
public class DispatchArticleController extends SimpleFormController{ public class DispatchArticleController extends SimpleFormController{
protected final Log logger = LogFactory.getLog(getClass()); protected final Log logger = LogFactory.getLog(getClass());
private IArticleManager articleManager; private IArticleManager articleManager;
public IArticleManager getArticleManager() { public IArticleManager getArticleManager() {
return articleManager; return articleManager;
@@ -44,7 +42,7 @@ public class DispatchArticleController extends SimpleFormController{
public void setUserManager(IUserManager userManager) { public void setUserManager(IUserManager userManager) {
this.userManager = userManager; this.userManager = userManager;
} }
private IConferenceManager conferenceManager; private IConferenceManager conferenceManager;
public IConferenceManager getConferenceManager() { public IConferenceManager getConferenceManager() {
return conferenceManager; return conferenceManager;
@@ -52,41 +50,52 @@ public class DispatchArticleController extends SimpleFormController{
public void setConferenceManager(IConferenceManager conferenceManager) { public void setConferenceManager(IConferenceManager conferenceManager) {
this.conferenceManager = conferenceManager; this.conferenceManager = conferenceManager;
} }
protected Object formBackingObject(HttpServletRequest request) throws ConferenceDoesntExistException { protected Object formBackingObject(HttpServletRequest request) throws ConferenceDoesntExistException {
logger.info("Returning dispatcher view"); logger.info("Returning dispatcher view");
//on recupere l'id de conference
int conf_id = (Integer)request.getSession().getAttribute("idCurrentConference");
Collection<User> members = userManager.getUsers(conf_id,RoleType.PCMEMBER);
request.getSession().setAttribute("members",members); FormDispatcher fd = new FormDispatcher();
return fd;
return new FormDispatcher();
//Conference conf = SessionService.getInstance().getCurrentConference();
//Collection<User> members = userManager.getUsers(conf.getId(),RoleType.PCMEMBER);
//request.getSession().setAttribute("members", members);
} }
@SuppressWarnings("unchecked")
@Override @Override
protected Map referenceData(HttpServletRequest request, Object command, protected Map referenceData(HttpServletRequest request, Object command,
Errors errors) throws Exception { Errors errors) throws Exception {
logger.info("Dispatch: In the referenceData method, adding object in the model");
Map model = new HashMap(); Map model = new HashMap();
// Fetching conference
Conference conf = SessionService.getInstance().getCurrentConference(); Conference conf = SessionService.getInstance().getCurrentConference();
Collection<User> members = userManager.getUsers(conf.getId(),RoleType.PCMEMBER);
model.put("articles", articleManager.getArticles(conf.getId())); model.put("articles", articleManager.getArticles(conf.getId()));
model.put("members", members);
return model; return model;
} }
protected ModelAndView onSubmit(HttpServletRequest request, @SuppressWarnings("unchecked")
HttpServletResponse response, protected ModelAndView onSubmit(HttpServletRequest request, HttpServletResponse response, Object command, BindException errors) throws Exception {
Object command, BindException errors) throws Exception { /*Conference conf = SessionService.getInstance().getCurrentConference();
// Fetching conference
Conference conf = SessionService.getInstance().getCurrentConference();
FormDispatcher fd = (FormDispatcher)command; FormDispatcher fd = (FormDispatcher)command;
Article article = articleManager.getArticle(fd.getIdArticle()); Article article = articleManager.getArticle(fd.getIdArticle());
return new ModelAndView("dispatchArticle", "articles", articleManager.getArticles(conf.getId()));*/
return new ModelAndView("dispatchArticle", "articles", articleManager.getArticles(conf.getId())); logger.info("Dispatch: In the onSubmit method");
Map model = new HashMap();
Conference conf = SessionService.getInstance().getCurrentConference();
Collection<User> members = userManager.getUsers(conf.getId(),RoleType.PCMEMBER);
model.put("articles", articleManager.getArticles(conf.getId()));
model.put("members", members);
return new ModelAndView("dispatchArticle", model);
} }
} }