comparison gnv/src/main/java/de/intevation/gnv/action/SelectArtifactFactoryAction.java @ 19:1557bea6cb55

Do some Imporvements for Userfriendly exceptionhandling. Added multisupport for Products gnv/trunk@108 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Tim Englich <tim.englich@intevation.de>
date Mon, 21 Sep 2009 15:28:02 +0000
parents 3cb753564552
children 07e9c137a2f1
comparison
equal deleted inserted replaced
18:87002cbd194c 19:1557bea6cb55
1 /** 1 /**
2 * 2 *
3 */ 3 */
4 package de.intevation.gnv.action; 4 package de.intevation.gnv.action;
5
6 import java.util.Collection;
5 7
6 import javax.servlet.http.HttpServletRequest; 8 import javax.servlet.http.HttpServletRequest;
7 import javax.servlet.http.HttpServletResponse; 9 import javax.servlet.http.HttpServletResponse;
8 10
9 import org.apache.log4j.Logger; 11 import org.apache.log4j.Logger;
14 import de.intevation.gnv.action.sessionmodel.SessionModel; 16 import de.intevation.gnv.action.sessionmodel.SessionModel;
15 import de.intevation.gnv.action.sessionmodel.SessionModelFactory; 17 import de.intevation.gnv.action.sessionmodel.SessionModelFactory;
16 import de.intevation.gnv.artifactdatabase.client.ArtifactDatabaseClient; 18 import de.intevation.gnv.artifactdatabase.client.ArtifactDatabaseClient;
17 import de.intevation.gnv.artifactdatabase.client.ArtifactDatabaseClientFactory; 19 import de.intevation.gnv.artifactdatabase.client.ArtifactDatabaseClientFactory;
18 import de.intevation.gnv.artifactdatabase.objects.ArtifactDescription; 20 import de.intevation.gnv.artifactdatabase.objects.ArtifactDescription;
21 import de.intevation.gnv.artifactdatabase.objects.ArtifactFactory;
19 import de.intevation.gnv.artifactdatabase.objects.ArtifactObject; 22 import de.intevation.gnv.artifactdatabase.objects.ArtifactObject;
20 import de.intevation.gnv.util.XSLTransformer; 23 import de.intevation.gnv.util.XSLTransformer;
21 24
22 /** 25 /**
23 * @author Tim Englich <tim.englich@intevation.de> 26 * @author Tim Englich <tim.englich@intevation.de>
39 log.debug("SelectArtifactFactoryAction.execute"); 42 log.debug("SelectArtifactFactoryAction.execute");
40 String selectedArtifactFactoryID = request.getParameter("artifactFactory"); 43 String selectedArtifactFactoryID = request.getParameter("artifactFactory");
41 log.debug("Selected ArtifactFactory ==> "+selectedArtifactFactoryID); 44 log.debug("Selected ArtifactFactory ==> "+selectedArtifactFactoryID);
42 45
43 SessionModel sm = SessionModelFactory.getInstance().getSessionModel(request); 46 SessionModel sm = SessionModelFactory.getInstance().getSessionModel(request);
47 Collection<ArtifactObject> artifactFactories = sm.getArtifactFactories();
48 if (artifactFactories == null || artifactFactories.isEmpty()){
49 new FetchArtifactFactoriesAction().execute(mapping, form, request, response);
50
51 }
52
53
44 sm.selectArtifactFactory(selectedArtifactFactoryID); 54 sm.selectArtifactFactory(selectedArtifactFactoryID);
45 55 ArtifactObject af = sm.getSelectedArtifactFactory();;
46 ArtifactDatabaseClient adc = ArtifactDatabaseClientFactory.getInstance().getArtifactDatabaseClient(); 56 ArtifactDatabaseClient adc = ArtifactDatabaseClientFactory.getInstance().getArtifactDatabaseClient();
47 ArtifactObject artifact = adc.createNewArtifact(sm.getSelectedArtifactFactory()); 57 ArtifactObject artifact = adc.createNewArtifact(af);
48 sm.setCurrentArtifact(artifact); 58 sm.setCurrentArtifact(artifact);
49 59
50 ArtifactDescription artifactdescription = adc.getCurrentStepDescription(sm.getSelectedArtifactFactory(), artifact); 60 ArtifactDescription artifactdescription = adc.getCurrentStepDescription(af, artifact);
51 61
52 XSLTransformer transformer = new XSLTransformer(); 62 XSLTransformer transformer = new XSLTransformer();
53 String ui = transformer.transform(artifactdescription.getCurrentUI(), "UTF-8", request.getRealPath("WEB-INF/config/templates/describe-ui.xsl")); 63 String ui = transformer.transform(artifactdescription.getCurrentUI(), "UTF-8", request.getRealPath("WEB-INF/config/templates/describe-ui.xsl"));
54 64
55 request.setAttribute("ui", ui); 65 request.setAttribute("ui", ui);

http://dive4elements.wald.intevation.org