ontomde-uml2-struts 1.0.4
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +5 -0
- data/Manifest.txt +31 -0
- data/README.txt +38 -0
- data/Rakefile +32 -0
- data/lib/ontomde-uml2-struts/MessageResources.rb +356 -0
- data/lib/ontomde-uml2-struts/action.rb +886 -0
- data/lib/ontomde-uml2-struts/blob.rb +11 -0
- data/lib/ontomde-uml2-struts/exceptionHandling.rb +167 -0
- data/lib/ontomde-uml2-struts/footer.rb +128 -0
- data/lib/ontomde-uml2-struts/form.rb +483 -0
- data/lib/ontomde-uml2-struts/header.rb +37 -0
- data/lib/ontomde-uml2-struts/header_link.rb +39 -0
- data/lib/ontomde-uml2-struts/jsp_edit.rb +866 -0
- data/lib/ontomde-uml2-struts/jsp_edit_field.rb +1 -0
- data/lib/ontomde-uml2-struts/jsp_edit_js.rb +124 -0
- data/lib/ontomde-uml2-struts/jsp_index.rb +131 -0
- data/lib/ontomde-uml2-struts/localeAction.rb +641 -0
- data/lib/ontomde-uml2-struts/main.rb +140 -0
- data/lib/ontomde-uml2-struts/mappingForBean.rb +132 -0
- data/lib/ontomde-uml2-struts/mappingForJsp.rb +272 -0
- data/lib/ontomde-uml2-struts/mappingToJavaHierarchy.rb +87 -0
- data/lib/ontomde-uml2-struts/reloadAction.rb +33 -0
- data/lib/ontomde-uml2-struts/spring.rb +89 -0
- data/lib/ontomde-uml2-struts/struts-config.rb +232 -0
- data/lib/ontomde-uml2-struts/validation.rb +116 -0
- data/lib/ontomde-uml2-struts/validator.rb +341 -0
- data/lib/ontomde-uml2-struts/version.rb +7 -0
- data/lib/ontomde-uml2-struts/webXml.rb +165 -0
- data/lib/ontomde-uml2-struts/xmlForm.rb +308 -0
- data/lib/ontomde-uml2-struts.rb +34 -0
- data/test/test_ontomde-uml2-struts.rb +0 -0
- metadata +112 -0
@@ -0,0 +1 @@
|
|
1
|
+
# nop
|
@@ -0,0 +1,124 @@
|
|
1
|
+
|
2
|
+
module Muml_Class
|
3
|
+
def struts_jspEditwriteSelfJSInclude
|
4
|
+
js_include=struts_jsp_edit_path.gsub(/\.[^\/]*$/,".js.jsp")
|
5
|
+
write(%{<script language="Javascript" src="#{js_include}" ></script>\n})
|
6
|
+
end
|
7
|
+
def struts_jspEdit_generateJavascript
|
8
|
+
js_include=context[:mtk_fileName].gsub(/\.[^\/]*$/,".js.jsp")
|
9
|
+
mtk_writeSession("#{js_include}") {
|
10
|
+
struts_jspEdit_generateJavascript_jspHeader
|
11
|
+
#write("<SCRIPT>\n")
|
12
|
+
struts_jspEdit_generateJavascript_commun
|
13
|
+
struts_jspEdit_generateJavascript_operations
|
14
|
+
struts_jspEdit_generateJavascript_edit_remove_add
|
15
|
+
#write "</SCRIPT>\n"
|
16
|
+
}
|
17
|
+
end
|
18
|
+
|
19
|
+
def struts_jspEdit_generateJavascript_jspHeader
|
20
|
+
write <<END
|
21
|
+
<%@ page contentType="text/javascript;charset=UTF-8" %>
|
22
|
+
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
|
23
|
+
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
|
24
|
+
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
|
25
|
+
END
|
26
|
+
end
|
27
|
+
|
28
|
+
def struts_jspEdit_generateJavascript_operations
|
29
|
+
umlx_ownedAndInheritedOperation.each {|biz|
|
30
|
+
next unless biz.umlx_businessMethod?
|
31
|
+
f=biz.java_Name
|
32
|
+
write(%{
|
33
|
+
function #{f}() {
|
34
|
+
document.forms[0].#{Muml_Class::STRUTS_DISPATCH_FIELD_NAME}.value="#{f}";
|
35
|
+
document.forms[0].submit();
|
36
|
+
}
|
37
|
+
})
|
38
|
+
}
|
39
|
+
end
|
40
|
+
|
41
|
+
def struts_jspEdit_generateJavascript_commun
|
42
|
+
write <<END_SCRIPT
|
43
|
+
function #{STRUTS_REFRESH_ACTION}(tabid) {
|
44
|
+
document.forms[0].#{Muml_Class::STRUTS_REQUESTED_TAB}.value=tabid;
|
45
|
+
document.forms[0].#{Muml_Class::STRUTS_DISPATCH_FIELD_NAME}.value="#{STRUTS_REFRESH_ACTION}";
|
46
|
+
document.forms[0].submit();
|
47
|
+
}
|
48
|
+
function #{STRUTS_RETURN_ACTION}() {
|
49
|
+
document.forms[0].#{Muml_Class::STRUTS_DISPATCH_FIELD_NAME}.value="#{STRUTS_RETURN_ACTION}";
|
50
|
+
document.forms[0].submit();
|
51
|
+
}
|
52
|
+
function #{STRUTS_PROCEED_ACTION}() {
|
53
|
+
document.forms[0].#{Muml_Class::STRUTS_DISPATCH_FIELD_NAME}.value="#{STRUTS_PROCEED_ACTION}";
|
54
|
+
document.forms[0].submit();
|
55
|
+
}
|
56
|
+
|
57
|
+
function transformToServerFormat(date, field, locale) {
|
58
|
+
var time = date.getTime()
|
59
|
+
var date2 = new Date(time);
|
60
|
+
return date2.print("%Y/%m/%d %H:%M:%S", locale);
|
61
|
+
}
|
62
|
+
function hide_sel(id){
|
63
|
+
var s = document.getElementsByTagName('select');
|
64
|
+
var len = s.length;
|
65
|
+
for (i = 0; i<len; i++){
|
66
|
+
s[i].style.visibility = 'hidden';
|
67
|
+
}
|
68
|
+
document.getElementById(id).style.visibility = 'visible';
|
69
|
+
|
70
|
+
}
|
71
|
+
|
72
|
+
function show_sel(id){
|
73
|
+
var s = document.getElementsByTagName('select');
|
74
|
+
var len = s.length;
|
75
|
+
for (i = 0; i<len; i++){
|
76
|
+
s[i].style.visibility = 'visible';
|
77
|
+
}
|
78
|
+
document.getElementById(id).style.visibility = 'hidden';
|
79
|
+
}
|
80
|
+
|
81
|
+
|
82
|
+
END_SCRIPT
|
83
|
+
end
|
84
|
+
|
85
|
+
def struts_jspEdit_generateJavascript_edit_remove_add
|
86
|
+
context[:struts_tab].struts_ownedAttribute.each { |a|
|
87
|
+
#next unless a.umlx_isComposite?
|
88
|
+
#next unless a.umlx_isAssociation?
|
89
|
+
#next if a.umlx_oneSide?
|
90
|
+
["edit","add"].each {|meth|
|
91
|
+
f="#{meth}#{a.java_NameBean}"
|
92
|
+
write <<END
|
93
|
+
|
94
|
+
function #{f}(objid) {
|
95
|
+
if("_"+objid != "_empty") {
|
96
|
+
document.forms[0].#{Muml_Class::STRUTS_DISPATCH_FIELD_NAME}.value="#{f}";
|
97
|
+
document.forms[0].#{Muml_Class::STRUTS_REQUESTED_TAB}.value=objid;
|
98
|
+
document.forms[0].submit();
|
99
|
+
} else {
|
100
|
+
alert("no element selected for \\n#{struts_writeMsg("#{self.java_qualifiedName}.#{a.java_Name}")}");
|
101
|
+
}
|
102
|
+
}
|
103
|
+
END
|
104
|
+
|
105
|
+
}
|
106
|
+
|
107
|
+
write <<END
|
108
|
+
|
109
|
+
function removeAndDelete#{a.java_NameBean}(objid) {
|
110
|
+
if (window.confirm('<bean:message key="userMessage.deleteItem"/>')) {
|
111
|
+
if("_"+objid != "_empty") {
|
112
|
+
document.forms[0].#{Muml_Class::STRUTS_DISPATCH_FIELD_NAME}.value="removeAndDelete#{a.java_NameBean}";
|
113
|
+
document.forms[0].#{Muml_Class::STRUTS_REQUESTED_TAB}.value=objid;
|
114
|
+
document.forms[0].submit();
|
115
|
+
} else {
|
116
|
+
alert("no element selected for \\n#{struts_writeMsg("#{self.java_qualifiedName}.#{a.java_Name}")}");
|
117
|
+
}
|
118
|
+
}
|
119
|
+
}
|
120
|
+
END
|
121
|
+
}
|
122
|
+
end
|
123
|
+
|
124
|
+
end #module
|
@@ -0,0 +1,131 @@
|
|
1
|
+
module Mrdf_Model
|
2
|
+
|
3
|
+
def struts_index_generate
|
4
|
+
|
5
|
+
mtk_writeSession( %{#{context[:webContentDir]}/index.jsp} ) {
|
6
|
+
mtk_context( :struts_curClass => self) {
|
7
|
+
write <<END
|
8
|
+
<?xml version="1.0" encoding="ISO-8859-1" ?>
|
9
|
+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
10
|
+
<%@ page contentType="text/html;charset=ISO8859-1" %>
|
11
|
+
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
|
12
|
+
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
|
13
|
+
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
|
14
|
+
|
15
|
+
<html:html>
|
16
|
+
<head>
|
17
|
+
<script src="res//orange/script/initialization.js" type="text/javascript"></script>
|
18
|
+
<script src="res//orange/script/main.js" type="text/javascript"></script>
|
19
|
+
<link rel="stylesheet" type="text/css" href="res//orange/css/layout.css"/>
|
20
|
+
<link rel="stylesheet" type="text/css" href="res//orange/css/content.css"/>
|
21
|
+
<link rel="stylesheet" type="text/css" media="print" href="res//orange/css/print.css"/>
|
22
|
+
<script type="text/javascript" language="Javascript" src="res//orange/script/fonctionsJS-archimede.js"></script>
|
23
|
+
|
24
|
+
<title>Index -- Generated with XMDA</title>
|
25
|
+
</head>
|
26
|
+
<body >
|
27
|
+
|
28
|
+
<html:form action="#{STRUTS_ACTION_LOCALE_URL}">
|
29
|
+
<%-- not necessary in jsp_index debug form --%>
|
30
|
+
<input type="hidden" name="#{Muml_Class::STRUTS_DISPATCH_FIELD_NAME}" />
|
31
|
+
|
32
|
+
<logic:messagesPresent>
|
33
|
+
<bean:message key="errors.header"/>
|
34
|
+
<ul>
|
35
|
+
<html:messages id="error">
|
36
|
+
<li><bean:write name="error"/></li>
|
37
|
+
</html:messages>
|
38
|
+
</ul><hr />
|
39
|
+
</logic:messagesPresent>
|
40
|
+
<center>
|
41
|
+
|
42
|
+
END
|
43
|
+
|
44
|
+
struts_header_generate
|
45
|
+
write <<END
|
46
|
+
<!-- **************************************
|
47
|
+
************ CORPS DE PAGE **************
|
48
|
+
**************************************** -->
|
49
|
+
<center>
|
50
|
+
<div class="milieu">
|
51
|
+
<div class="contenusansMenu">
|
52
|
+
<!-- Indicateur Hi�rarchique -->
|
53
|
+
<div class="indicateur"><h1>Accueil</h1></div>
|
54
|
+
<a name="contenu"></a>
|
55
|
+
<!-- Corps de Page -->
|
56
|
+
<h2 style="font-size:120%">Generated with XMDA</h2>
|
57
|
+
<ul>
|
58
|
+
END
|
59
|
+
pkg=Hash.new
|
60
|
+
uml_Class_all.each {|c|
|
61
|
+
next if c.kind_of?(Muml_Enumeration)
|
62
|
+
next if c.kind_of?(Muml_Class)&& !c.umlx_isReallyAClass?
|
63
|
+
next if c.java_ignoreMe?
|
64
|
+
#puts "JSP_INDEX #{c}::#{c.class.name} #{c.db_isTransient?}"
|
65
|
+
#next if c.db_isTransient?
|
66
|
+
#next if c.java_DAOClass.empty?
|
67
|
+
next if c.struts_action.empty?
|
68
|
+
p=c.uml_ownedMember_inv_one
|
69
|
+
pkg[p]=Array.new if pkg[p].nil?
|
70
|
+
pkg[p] << c
|
71
|
+
}
|
72
|
+
write %{<table border="1" style="border-style: ; border: gray; border-spacing:0px">}
|
73
|
+
write %{<tr bgcolor="#EEEEEE" width="10%"><td valign="center"><a name="index"/><h3>Package index</h3></td><td><ul>}
|
74
|
+
pkg.keys.sort {|a,b| a.java_qualifiedName.to_s <=> b.java_qualifiedName.to_s }.each { |p|
|
75
|
+
write %{<li><a href="##{p.java_qualifiedName}">#{p.java_qualifiedName}</a></li> }
|
76
|
+
}
|
77
|
+
write "</ul></td></tr>"
|
78
|
+
pkg.keys.sort {|a,b| a.uml_name.to_s <=> b.uml_name.to_s }.each { |p|
|
79
|
+
write %{<tr><td valign="center"><h3><a name="#{p.java_qualifiedName}"/><a href="#index">#{p.java_qualifiedName.gsub(/\./," .")}</a></h3></td><td><ul>}
|
80
|
+
pkg[p].sort { |a,b| a.uml_name.to_s <=> b.uml_name.to_s }.each {|c|
|
81
|
+
write <<END
|
82
|
+
#{if (!c.uml_isAbstract?)
|
83
|
+
%{<li>#{c.uml_name}: <html:link page="/#{c.java_Name}-new.do?doWhat=newa">new</html:link> #{%{ (transient)} if c.db_isTransient? }
|
84
|
+
#{ %{
|
85
|
+
<%
|
86
|
+
for (java.util.Iterator<?> iter = #{c.db_getFindAllCall}.iterator(); iter.hasNext();) {
|
87
|
+
#{c.java_qualifiedName} c=(#{c.java_qualifiedName})iter.next();
|
88
|
+
|
89
|
+
out.println(", <a href=\\"#{c.java_Name}-new.do?doWhat=sgbd_read&id="+c.getId()+"\\">"+c.getId()+"</a>");
|
90
|
+
}
|
91
|
+
%>
|
92
|
+
} unless (c.db_isTransient? || c.java_DAOClass.empty?) }
|
93
|
+
|
94
|
+
</li>}
|
95
|
+
else
|
96
|
+
%{}
|
97
|
+
end
|
98
|
+
}
|
99
|
+
END
|
100
|
+
}
|
101
|
+
|
102
|
+
|
103
|
+
write("</ul></td></tr>")
|
104
|
+
}
|
105
|
+
write <<END
|
106
|
+
</table>
|
107
|
+
</span>
|
108
|
+
|
109
|
+
</div>
|
110
|
+
</div>
|
111
|
+
<%-- TODO: html:xxx --%>
|
112
|
+
<div class="bodyBottom"></div>
|
113
|
+
<input type="hidden" name="page" value="/Welcome.do"/>
|
114
|
+
END
|
115
|
+
|
116
|
+
struts_footer_generate
|
117
|
+
write <<END
|
118
|
+
</div>
|
119
|
+
|
120
|
+
|
121
|
+
|
122
|
+
</center>
|
123
|
+
</html:form>
|
124
|
+
|
125
|
+
</body>
|
126
|
+
</html:html>
|
127
|
+
END
|
128
|
+
}
|
129
|
+
}
|
130
|
+
end
|
131
|
+
end
|