comparison gnv/src/main/java/de/intevation/gnv/action/SelectArtifactFactoryAction.java @ 34:25fdec8b4c69

Added Global Errorhandling to the GNV-Client gnv/trunk@170 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Tim Englich <tim.englich@intevation.de>
date Fri, 02 Oct 2009 08:38:57 +0000
parents 07e9c137a2f1
children 4405f31bbc30
comparison
equal deleted inserted replaced
33:32ffff3f67aa 34:25fdec8b4c69
41 throws Exception { 41 throws Exception {
42 log.debug("SelectArtifactFactoryAction.execute"); 42 log.debug("SelectArtifactFactoryAction.execute");
43 String selectedArtifactFactoryID = request.getParameter("artifactFactory"); 43 String selectedArtifactFactoryID = request.getParameter("artifactFactory");
44 log.debug("Selected ArtifactFactory ==> "+selectedArtifactFactoryID); 44 log.debug("Selected ArtifactFactory ==> "+selectedArtifactFactoryID);
45 45
46 SessionModel sm = SessionModelFactory.getInstance().getSessionModel(request); 46 try {
47 Collection<ArtifactObject> artifactFactories = sm.getArtifactFactories(); 47 SessionModel sm = SessionModelFactory.getInstance().getSessionModel(request);
48 // Löscht die Artifactspezifischen Attribute am Sessionmodel 48 Collection<ArtifactObject> artifactFactories = sm.getArtifactFactories();
49 sm.resetModel(); 49 // Löscht die Artifactspezifischen Attribute am Sessionmodel
50 if (artifactFactories == null || artifactFactories.isEmpty()){ 50 sm.resetModel();
51 new FetchArtifactFactoriesAction().execute(mapping, form, request, response); 51 if (artifactFactories == null || artifactFactories.isEmpty()){
52 52 new FetchArtifactFactoriesAction().execute(mapping, form, request, response);
53
54 }
55
56 sm.selectArtifactFactory(selectedArtifactFactoryID);
57 ArtifactObject af = sm.getSelectedArtifactFactory();;
58 ArtifactDatabaseClient adc = ArtifactDatabaseClientFactory.getInstance().getArtifactDatabaseClient();
59 ArtifactObject artifact = adc.createNewArtifact(af);
60 sm.setCurrentArtifact(artifact);
61
62 ArtifactDescription artifactdescription = adc.getCurrentStepDescription(af, artifact);
63
64 XSLTransformer transformer = new XSLTransformer();
65 String ui = transformer.transform(artifactdescription.getCurrentUI(), "UTF-8", request.getRealPath("WEB-INF/config/templates/describe-ui.xsl"));
66
67 request.setAttribute("ui", ui);
68
69 // return succsess
70 return super.execute(mapping, form, request, response);
71 } catch (Exception e) {
72 log.error(e,e);
73 request.setAttribute(CommunicationKeys.REQUEST_EXCEPTION_MESSAGE_ID, e.getMessage());
74 return super.getExceptionForward(mapping);
53 } 75 }
54
55
56 sm.selectArtifactFactory(selectedArtifactFactoryID);
57 ArtifactObject af = sm.getSelectedArtifactFactory();;
58 ArtifactDatabaseClient adc = ArtifactDatabaseClientFactory.getInstance().getArtifactDatabaseClient();
59 ArtifactObject artifact = adc.createNewArtifact(af);
60 sm.setCurrentArtifact(artifact);
61
62 ArtifactDescription artifactdescription = adc.getCurrentStepDescription(af, artifact);
63
64 XSLTransformer transformer = new XSLTransformer();
65 String ui = transformer.transform(artifactdescription.getCurrentUI(), "UTF-8", request.getRealPath("WEB-INF/config/templates/describe-ui.xsl"));
66
67 request.setAttribute("ui", ui);
68
69 // return succsess
70 return super.execute(mapping, form, request, response);
71 } 76 }
72 77
73 /** 78 /**
74 * Constructor 79 * Constructor
75 */ 80 */

http://dive4elements.wald.intevation.org