Source Code Cross Referenced for W3CDomUtil.java in  » Workflow-Engines » wfmopen-2.1.1 » de » danet » an » util » web » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » Workflow Engines » wfmopen 2.1.1 » de.danet.an.util.web 
Source Cross Referenced  Class Diagram Java Document (Java Doc) 


001:        /*
002:         * This file is part of the WfMOpen project.
003:         * Copyright (C) 2001-2003 Danet GmbH (www.danet.de), GS-AN.
004:         * All rights reserved.
005:         *
006:         * This program is free software; you can redistribute it and/or modify
007:         * it under the terms of the GNU General Public License as published by
008:         * the Free Software Foundation; either version 2 of the License, or
009:         * (at your option) any later version.
010:         *
011:         * This program is distributed in the hope that it will be useful,
012:         * but WITHOUT ANY WARRANTY; without even the implied warranty of
013:         * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
014:         * GNU General Public License for more details.
015:         *
016:         * You should have received a copy of the GNU General Public License
017:         * along with this program; if not, write to the Free Software
018:         * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
019:         * 
020:         * $Id: W3CDomUtil.java,v 1.2 2006/09/29 12:32:08 drmlipp Exp $
021:         *
022:         * $Log: W3CDomUtil.java,v $
023:         * Revision 1.2  2006/09/29 12:32:08  drmlipp
024:         * Consistently using WfMOpen as projct name now.
025:         *
026:         * Revision 1.1.1.1  2003/06/30 20:05:12  drmlipp
027:         * Initial import
028:         *
029:         * Revision 1.7  2003/06/27 08:51:46  lipp
030:         * Fixed copyright/license information.
031:         *
032:         * Revision 1.6  2003/04/25 14:50:59  lipp
033:         * Fixed javadoc errors and warnings.
034:         *
035:         * Revision 1.5  2003/04/24 20:50:13  lipp
036:         * Fixed some warnings.
037:         *
038:         * Revision 1.4  2003/02/24 10:46:41  lipp
039:         * Removed usage of System.out and .err.
040:         *
041:         * Revision 1.3  2001/12/19 11:48:42  lipp
042:         * XSP debug feature.
043:         *
044:         * Revision 1.2  2001/12/11 14:29:10  schlue
045:         * Basic implementation of staff group types.
046:         * ToDo: persistence, group type id, sub group types and group type template for new entries
047:         *
048:         * Revision 1.1  2001/10/25 07:49:33  lipp
049:         * Moved W3CDomUtil to de.danet.an.util.web
050:         *
051:         * Revision 1.6  2001/10/17 12:16:12  montag
052:         * importProcessDefinitions working
053:         *
054:         * Revision 1.5  2001/10/17 12:12:38  montag
055:         * importProcessDefinitions working
056:         *
057:         * Revision 1.4  2001/10/15 12:21:35  lipp
058:         * New methods for dialg hints.
059:         *
060:         * Revision 1.3  2001/10/12 13:25:23  lipp
061:         * Making progress with new process list.
062:         *
063:         * Revision 1.2  2001/08/17 10:00:24  montag
064:         * clean up classes and javadoc
065:         *
066:         * Revision 1.1  2001/08/12 16:48:50  montag
067:         * Read in process definition for process types;
068:         * dtd and encoding problem not solved yet !
069:         *
070:         *
071:         */
072:
073:        package de.danet.an.util.web;
074:
075:        import javax.xml.parsers.DocumentBuilder;
076:        import javax.xml.parsers.DocumentBuilderFactory;
077:        import javax.xml.parsers.ParserConfigurationException;
078:
079:        import org.w3c.dom.Document;
080:        import org.w3c.dom.Element;
081:        import org.w3c.dom.Node;
082:        import org.w3c.dom.NodeList;
083:        import org.w3c.dom.ProcessingInstruction;
084:
085:        /**
086:         * Utilities for easy use of org.w3c.dom things.
087:         */
088:        public class W3CDomUtil {
089:
090:            /**
091:             * Just get a new, never used and fresh <code>Document</code>.
092:             * @return a new, never used and fresh <code>Document</code>
093:             */
094:            public static Document createNewDocument() {
095:                DocumentBuilderFactory dbf = DocumentBuilderFactory
096:                        .newInstance();
097:                DocumentBuilder db = null;
098:                try {
099:                    db = dbf.newDocumentBuilder();
100:                } catch (ParserConfigurationException e) {
101:                    throw new IllegalStateException();
102:                }
103:                Document doc = db.newDocument();
104:                return doc;
105:            }
106:
107:            /**
108:             * Returns a "link" element with the given attributes. Valid values
109:             * for <code>name</code>, <code>hint</code> and <code>type</code>
110:             * are documentated in the DV-Konzept.
111:             * @param doc The W3C DOM document in which the link will be inserted.
112:             * @param name The name atribute of the link.
113:             * @param hint The hint attribute of the link.
114:             * @param href The href attribute of the link. Strings starting with
115:             * "http://" are not modified.
116:             * @param display The display string used to show the link. (Use
117:             * <code>mappingSetup.mapText()</code> or similar before calling this 
118:             * method.)
119:             * @return An W3C DOM element of type "link".
120:             * @deprecated
121:             */
122:            public static Element createLink(Document doc, String name,
123:                    String hint, String href, String display) {
124:                Element link = doc.createElement("link");
125:                link.setAttribute("name", name);
126:                link.setAttribute("hint", hint);
127:                // modify href to get a correct URI
128:                link.setAttribute("href", href);
129:                link.appendChild(doc.createTextNode(display));
130:                return link;
131:            }
132:
133:            /**
134:             * Appends to a given node a "dialog hint node", i.e. a hint how a
135:             * node's attribute or a node's value is to be represented in a
136:             * dialog.
137:             * @param node the node to which the dialog hint node is to be
138:             * appended.
139:             * @param attribute the name of the node's attribute which is 
140:             * attributed by the dialog hint. This parameter may be
141:             * <code>null</code> if the dialog hint applies to the value of the node.
142:             * @param type the type attribute of the dialog hint node.
143:             * @return the appended dialog hint element.
144:             */
145:            public static Element appendDialogHint(Node node, String attribute,
146:                    String type) {
147:                Document doc = node.getOwnerDocument();
148:                Element diaAttr = doc.createElement("dialog-hint");
149:                if (attribute != null) {
150:                    diaAttr.setAttribute("attribute", attribute);
151:                }
152:                diaAttr.setAttribute("type", type);
153:                node.appendChild(diaAttr);
154:                return diaAttr;
155:            }
156:
157:            /**
158:             * Appends to a given node a "dialog hint node", i.e. a hint how a
159:             * node's attribute or a node's value is to be represented in a
160:             * dialog.
161:             * @param node the node to which the dialog hint node is to be
162:             * appended.
163:             * @param attribute the name of the node's attribute which is 
164:             * attributed by the dialog hint. This parameter may be
165:             * <code>null</code> if the dialog hint applies to the value of the node.
166:             * @param type the type attribute of the dialog hint node.
167:             * @param maxlength the maxlength attribute of the dialog hint node.
168:             * @return the appended dialog hint element.
169:             */
170:            public static Element appendDialogHint(Node node, String attribute,
171:                    String type, long maxlength) {
172:                Document doc = node.getOwnerDocument();
173:                Element diaAttr = doc.createElement("dialog-hint");
174:                if (attribute != null) {
175:                    diaAttr.setAttribute("attribute", attribute);
176:                }
177:                diaAttr.setAttribute("type", type);
178:                diaAttr.setAttribute("maxlength", Long.toString(maxlength));
179:                node.appendChild(diaAttr);
180:                return diaAttr;
181:            }
182:
183:            /**
184:             * Find the first PI node with the given PI target name.
185:             * @param doc the document to search.
186:             * @param name the PI target name.
187:             * @return the node found or <code>null</code>.
188:             */
189:            public static ProcessingInstruction findFirstPI(Document doc,
190:                    String name) {
191:                NodeList nodelist = doc.getChildNodes();
192:                int i = nodelist.getLength();
193:                for (int j = 0; j < i; j++) {
194:                    Node node = nodelist.item(j);
195:                    if (node.getNodeType() == Node.PROCESSING_INSTRUCTION_NODE) {
196:                        ProcessingInstruction pi = (ProcessingInstruction) node;
197:                        if (pi.getTarget().equals(name)) {
198:                            return pi;
199:                        }
200:                    }
201:                }
202:                return null;
203:            }
204:        }
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.