annotate gnv/src/main/java/de/intevation/gnv/action/DescribeUIAction.java @ 1002:b1eea43ba133

Second attempt to apply redirect link patch. gnv/trunk@1206 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Sun, 13 Jun 2010 16:28:37 +0000
parents 27029f0ec7e1
children 1b42a86184f6
rev   line source
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1 package de.intevation.gnv.action;
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
2
706
2659a5b1fa1e Added a link (and a controller) to toggle between german and english language (issue254).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 703
diff changeset
3 import java.util.Locale;
703
21ad44ccdb84 Tooltip text of the back-button became language specific (issue227).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 699
diff changeset
4 import java.util.ResourceBundle;
21ad44ccdb84 Tooltip text of the back-button became language specific (issue227).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 699
diff changeset
5
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
6 import javax.servlet.http.HttpServletRequest;
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
7 import javax.servlet.http.HttpServletResponse;
991
33198e55371c Improved session handling in the gui. If a session has timed out, the user gets to the start point - the fis selection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 966
diff changeset
8 import javax.servlet.http.HttpSession;
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
9 import javax.xml.xpath.XPathConstants;
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
10
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
11 import org.apache.log4j.Logger;
682
d3062dc8626a Application is now sensitive to changes of the preferred browser language in the current session (issue30).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 681
diff changeset
12 import org.apache.struts.Globals;
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
13 import org.apache.struts.action.ActionForm;
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
14 import org.apache.struts.action.ActionForward;
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
15 import org.apache.struts.action.ActionMapping;
963
0441e78cd900 Add more Javadocs
Tim Englich <tim.englich@intevation.de>
parents: 720
diff changeset
16 import org.w3c.dom.Node;
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
17
963
0441e78cd900 Add more Javadocs
Tim Englich <tim.englich@intevation.de>
parents: 720
diff changeset
18 import de.intevation.gnv.action.sessionmodel.SessionModel;
0441e78cd900 Add more Javadocs
Tim Englich <tim.englich@intevation.de>
parents: 720
diff changeset
19 import de.intevation.gnv.action.sessionmodel.SessionModelFactory;
0441e78cd900 Add more Javadocs
Tim Englich <tim.englich@intevation.de>
parents: 720
diff changeset
20 import de.intevation.gnv.artifactdatabase.client.ArtifactDatabaseClient;
0441e78cd900 Add more Javadocs
Tim Englich <tim.englich@intevation.de>
parents: 720
diff changeset
21 import de.intevation.gnv.artifactdatabase.client.ArtifactDatabaseClientFactory;
0441e78cd900 Add more Javadocs
Tim Englich <tim.englich@intevation.de>
parents: 720
diff changeset
22 import de.intevation.gnv.artifactdatabase.objects.ArtifactDescription;
0441e78cd900 Add more Javadocs
Tim Englich <tim.englich@intevation.de>
parents: 720
diff changeset
23 import de.intevation.gnv.artifactdatabase.objects.ArtifactObject;
0441e78cd900 Add more Javadocs
Tim Englich <tim.englich@intevation.de>
parents: 720
diff changeset
24 import de.intevation.gnv.util.ArtifactNamespaceContext;
0441e78cd900 Add more Javadocs
Tim Englich <tim.englich@intevation.de>
parents: 720
diff changeset
25 import de.intevation.gnv.util.XMLUtils;
0441e78cd900 Add more Javadocs
Tim Englich <tim.englich@intevation.de>
parents: 720
diff changeset
26 import de.intevation.gnv.util.XSLTransformer;
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
27
1002
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
28 import org.apache.log4j.Logger;
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
29
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
30 /**
690
254f062e334b Added JavaDoc.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 684
diff changeset
31 * This controller is called to fetch the current artifact description using the
254f062e334b Added JavaDoc.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 684
diff changeset
32 * describe operation. The describe document is used to feed an XSL transformer
254f062e334b Added JavaDoc.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 684
diff changeset
33 * that parses the xml and creats html output representing the parameter panel.
254f062e334b Added JavaDoc.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 684
diff changeset
34 * The html code is stored as attribute on the request object which is queried
254f062e334b Added JavaDoc.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 684
diff changeset
35 * in a jsp page later.
699
af22fa5567a6 Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 690
diff changeset
36 *
684
57fa8019fbdc Bring @author javadoc tags in form '@author <a href="john.doe@example.com">John Doe</a>'
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 683
diff changeset
37 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
38 */
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
39 public class DescribeUIAction extends ArtifactDatabaseActionBase {
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
40
1002
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
41 private static Logger log = Logger
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
42 .getLogger(DescribeUIAction.class);
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
43
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
44 public static final String XPATH_DYNAMIC_UI = "art:dynamic";
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
45 public static final String XPATH_STATIC_UI = "art:static";
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
46
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
47 public static final String XSL_SHEET_DYNAMIC =
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
48 "WEB-INF/config/templates/describe-ui.xsl";
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
49
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
50 public static final String XSL_SHEET_STATIC =
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
51 "WEB-INF/config/templates/describe-ui-static.xsl";
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
52
963
0441e78cd900 Add more Javadocs
Tim Englich <tim.englich@intevation.de>
parents: 720
diff changeset
53 /**
0441e78cd900 Add more Javadocs
Tim Englich <tim.englich@intevation.de>
parents: 720
diff changeset
54 * the logger, used to log exceptions and additonaly information
0441e78cd900 Add more Javadocs
Tim Englich <tim.englich@intevation.de>
parents: 720
diff changeset
55 */
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
56 private static Logger logger = Logger.getLogger(DescribeUIAction.class);
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
57
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
58
963
0441e78cd900 Add more Javadocs
Tim Englich <tim.englich@intevation.de>
parents: 720
diff changeset
59 /**
0441e78cd900 Add more Javadocs
Tim Englich <tim.englich@intevation.de>
parents: 720
diff changeset
60 * Constructor
0441e78cd900 Add more Javadocs
Tim Englich <tim.englich@intevation.de>
parents: 720
diff changeset
61 */
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
62 public DescribeUIAction() {
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
63 super();
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
64 }
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
65
1002
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
66 public static String getInputException(HttpServletRequest request) {
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
67 Object msg = request.getAttribute(CommunicationKeys.REQUEST_EXCEPTION_INPUT_ID);
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
68 return msg != null ? msg.toString() : "";
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
69 }
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
70
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
71
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
72 @Override
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
73 public ActionForward execute(
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
74 ActionMapping mapping,
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
75 ActionForm form,
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
76 HttpServletRequest request,
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
77 HttpServletResponse response
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
78 ) throws Exception
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
79 {
991
33198e55371c Improved session handling in the gui. If a session has timed out, the user gets to the start point - the fis selection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 966
diff changeset
80 if (isSessionExhausted(request)) {
33198e55371c Improved session handling in the gui. If a session has timed out, the user gets to the start point - the fis selection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 966
diff changeset
81 // session timed out before
33198e55371c Improved session handling in the gui. If a session has timed out, the user gets to the start point - the fis selection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 966
diff changeset
82 return sessionExhaustedForward(mapping, form, request, response);
33198e55371c Improved session handling in the gui. If a session has timed out, the user gets to the start point - the fis selection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 966
diff changeset
83 }
33198e55371c Improved session handling in the gui. If a session has timed out, the user gets to the start point - the fis selection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 966
diff changeset
84
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
85 logger.info("describe user interface");
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
86 try {
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
87 // render describe document and create user interface
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
88 SessionModel sm = SessionModelFactory.getInstance().getSessionModel(
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
89 request);
706
2659a5b1fa1e Added a link (and a controller) to toggle between german and english language (issue254).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 703
diff changeset
90 Locale tmp = sm.getCurrentLocale();
2659a5b1fa1e Added a link (and a controller) to toggle between german and english language (issue254).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 703
diff changeset
91 Locale locale = tmp != null ? tmp : request.getLocale();
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
92
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
93 ArtifactDatabaseClient adc = ArtifactDatabaseClientFactory
706
2659a5b1fa1e Added a link (and a controller) to toggle between german and english language (issue254).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 703
diff changeset
94 .getInstance().getArtifactDatabaseClient(locale);
2659a5b1fa1e Added a link (and a controller) to toggle between german and english language (issue254).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 703
diff changeset
95 request.getSession().setAttribute(Globals.LOCALE_KEY, locale);
715
0aeac0fe5db2 Fixed broken error messages that are displayed if the artifact server is down (issue236, issue242).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 706
diff changeset
96 ArtifactObject artifactFactory = sm.getSelectedArtifactFactory();
0aeac0fe5db2 Fixed broken error messages that are displayed if the artifact server is down (issue236, issue242).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 706
diff changeset
97
0aeac0fe5db2 Fixed broken error messages that are displayed if the artifact server is down (issue236, issue242).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 706
diff changeset
98 if (artifactFactory == null) {
0aeac0fe5db2 Fixed broken error messages that are displayed if the artifact server is down (issue236, issue242).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 706
diff changeset
99 logger.error("No connection to artifact server.");
0aeac0fe5db2 Fixed broken error messages that are displayed if the artifact server is down (issue236, issue242).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 706
diff changeset
100 request.setAttribute(
0aeac0fe5db2 Fixed broken error messages that are displayed if the artifact server is down (issue236, issue242).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 706
diff changeset
101 CommunicationKeys.REQUEST_EXCEPTION_MESSAGE_ID,
0aeac0fe5db2 Fixed broken error messages that are displayed if the artifact server is down (issue236, issue242).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 706
diff changeset
102 "java.io.ioexception..connection.refused");
0aeac0fe5db2 Fixed broken error messages that are displayed if the artifact server is down (issue236, issue242).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 706
diff changeset
103
0aeac0fe5db2 Fixed broken error messages that are displayed if the artifact server is down (issue236, issue242).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 706
diff changeset
104 return super.getExceptionForward(mapping);
0aeac0fe5db2 Fixed broken error messages that are displayed if the artifact server is down (issue236, issue242).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 706
diff changeset
105 }
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
106
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
107 ArtifactDescription artifactDescription =
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
108 adc.getCurrentStepDescription(
715
0aeac0fe5db2 Fixed broken error messages that are displayed if the artifact server is down (issue236, issue242).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 706
diff changeset
109 artifactFactory,
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
110 sm.getCurrentArtifact(),
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
111 true);
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
112
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
113 Node currentUI = artifactDescription.getCurrentUI();
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
114 if (currentUI != null) {
703
21ad44ccdb84 Tooltip text of the back-button became language specific (issue227).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 699
diff changeset
115 ResourceBundle res = ResourceBundle.getBundle(
706
2659a5b1fa1e Added a link (and a controller) to toggle between german and english language (issue254).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 703
diff changeset
116 "applicationMessages", locale);
1002
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
117 String editText = res.getString(
966
13de46229f63 I18N of links to insert example linestrings/polygons (issue272).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 963
diff changeset
118 "gnviewer.history.back.button");
1002
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
119 String submitButton = res.getString(
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
120 "gnviewer.select.button.src");
966
13de46229f63 I18N of links to insert example linestrings/polygons (issue272).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 963
diff changeset
121 String exampleLinestring = res.getString(
13de46229f63 I18N of links to insert example linestrings/polygons (issue272).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 963
diff changeset
122 "gnviewer.example.linestring");
13de46229f63 I18N of links to insert example linestrings/polygons (issue272).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 963
diff changeset
123 String examplePolygon = res.getString(
13de46229f63 I18N of links to insert example linestrings/polygons (issue272).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 963
diff changeset
124 "gnviewer.example.polygon");
703
21ad44ccdb84 Tooltip text of the back-button became language specific (issue227).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 699
diff changeset
125
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
126 XSLTransformer transformer = new XSLTransformer();
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
127
1002
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
128 String nextUrl = response.encodeURL(
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
129 mapping.findForward("next").getPath());
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
130
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
131 String url = response.encodeURL(
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
132 mapping.findForward("back").getPath());
1002
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
133
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
134
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
135 transformer.addParameter(
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
136 "uuid",
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
137 sm.getCurrentArtifact().getDescription());
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
138
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
139 transformer.addParameter(
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
140 "exception",
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
141 getInputException(request));
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
142
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
143
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
144 Object ft = request.getAttribute("furthertargets");
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
145
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
146 transformer.addParameter("further",
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
147 ft == null || (ft instanceof Boolean && ((Boolean)ft).booleanValue())
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
148 ? "true"
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
149 : "false");
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
150
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
151 transformer.addParameter("next-url", nextUrl);
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
152 transformer.addParameter("back-url", url);
703
21ad44ccdb84 Tooltip text of the back-button became language specific (issue227).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 699
diff changeset
153 transformer.addParameter("edit", editText);
966
13de46229f63 I18N of links to insert example linestrings/polygons (issue272).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 963
diff changeset
154 transformer.addParameter("example-polygon", examplePolygon);
13de46229f63 I18N of links to insert example linestrings/polygons (issue272).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 963
diff changeset
155 transformer.addParameter(
1002
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
156 "gnviewer-select-button-src",
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
157 submitButton);
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
158 transformer.addParameter(
966
13de46229f63 I18N of links to insert example linestrings/polygons (issue272).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 963
diff changeset
159 "example-linestring",
13de46229f63 I18N of links to insert example linestrings/polygons (issue272).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 963
diff changeset
160 exampleLinestring);
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
161
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
162 String fisUrl = response.encodeURL(
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
163 mapping.findForward("selectfis").getPath());
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
164 transformer.addParameter("selectfis", fisUrl);
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
165
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
166 // fetch dynamic part from describe document and transform it
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
167 Node dynamicNode = (Node) XMLUtils.xpath(
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
168 currentUI,
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
169 XPATH_DYNAMIC_UI,
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
170 XPathConstants.NODE,
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
171 ArtifactNamespaceContext.INSTANCE
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
172 );
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
173
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
174 String ui = transformer.transform(
1002
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
175 dynamicNode.getParentNode(),
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
176 "UTF-8",
1002
b1eea43ba133 Second attempt to apply redirect link patch.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 998
diff changeset
177 request.getRealPath(XSL_SHEET_DYNAMIC));
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
178
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
179 if (ui != null && ui.length() > 1)
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
180 request.setAttribute("ui", ui);
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
181
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
182 // fetch static part from describe document and transform it
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
183 Node staticNode = (Node) XMLUtils.xpath(
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
184 currentUI,
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
185 XPATH_STATIC_UI,
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
186 XPathConstants.NODE,
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
187 ArtifactNamespaceContext.INSTANCE
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
188 );
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
189
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
190 String staticUI = transformer.transform(
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
191 staticNode,
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
192 "UTF-8",
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
193 request.getRealPath(XSL_SHEET_STATIC));
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
194
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
195 if (staticUI != null && staticUI.length() > 1)
681
15ac78a91d1b Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 409
diff changeset
196 request.setAttribute("staticui", staticUI);
409
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
197 }
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
198
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
199 return super.execute(mapping, form, request, response);
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
200 }
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
201 catch (Exception e) {
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
202 logger.error(e, e);
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
203 request.setAttribute(
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
204 CommunicationKeys.REQUEST_EXCEPTION_MESSAGE_ID,
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
205 e.getMessage());
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
206
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
207 return super.getExceptionForward(mapping);
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
208 }
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
209 }
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
210 }
df78178e1180 Moved user interface creation to an own action. This makes avoids code duplication and makes it easier to write new action to handle special interactions, because there is no need for parsing the describe document and creating the user interface after this.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
211 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org