Wiki source code of Explanation of the default properties in a Wonder project
Last modified by Kieran Kelleher on 2012/07/19 21:12
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | When you create a new Wonder project in WOLips, the Properties file is filled with numerous properties. If you are new to WebObjects or new to using Project Wonder, you might want to know what those properties do. Let's see: | ||
2 | |||
3 | {{code}} | ||
4 | |||
5 | # OGNL | ||
6 | ognl.helperFunctions=true | ||
7 | ognl.inlineBindings=true | ||
8 | |||
9 | {{/code}} | ||
10 | |||
11 | The OGNL enable you to use the OGNL syntax for inline bindings (eg, putting bindings directly in the .html file instead of the .wod, for example: <wo:str value="$pageTitle" />). [[WOOGNL>>doc:documentation.Home.Frameworks.WOOgnl Framework.WebHome]] is automatically added to the classpath when you create a new Wonder project. | ||
12 | |||
13 | {{code}} | ||
14 | |||
15 | # Misc | ||
16 | er.extensions.stackTrace.cleanup=true | ||
17 | |||
18 | {{/code}} | ||
19 | |||
20 | See ERXExceptionUtilities.printStackTrace | ||
21 | |||
22 | {{code}} | ||
23 | |||
24 | # EOF | ||
25 | er.extensions.ERXEC.safeLocking=true | ||
26 | |||
27 | {{/code}} | ||
28 | |||
29 | This one is to enable editing context auto-locking (eg, you don't have to lock/unlock it yourself) at the end of the RR loop. You have to create your editing context with ERXEC.newEditingContext. | ||
30 | |||
31 | {{code}} | ||
32 | |||
33 | er.extensions.ERXEC.useSharedEditingContext=false | ||
34 | |||
35 | {{/code}} | ||
36 | |||
37 | If set to true, newly created instances use the shared editing context. | ||
38 | |||
39 | {{code}} | ||
40 | |||
41 | er.extensions.ERXEnterpriseObject.applyRestrictingQualifierOnInsert=true | ||
42 | |||
43 | {{/code}} | ||
44 | |||
45 | From what I understand, the "Qualifier" field defined in the model for an entity will not be used if you set this property to false. | ||
46 | |||
47 | {{code}} | ||
48 | |||
49 | er.extensions.ERXEnterpriseObject.updateInverseRelationships=true | ||
50 | |||
51 | {{/code}} | ||
52 | |||
53 | Provides automatic inverse relationship updating for ERXGenericRecord and ERXCustomObject. | ||
54 | |||
55 | {{note title="When to put it at FALSE"}} | ||
56 | If you have a mix of ERXGenericRecords and EOGenericRecords between models, you're better of turning it off. | ||
57 | |||
58 | Since an EOGenericRecords doesn't have the facilities to update the inverse relationship, you will get a ClassCastException. | ||
59 | {{/note}} | ||
60 | |||
61 | {{code}} | ||
62 | |||
63 | #dbConnectURLGLOBAL= | ||
64 | #dbConnectUserGLOBAL= | ||
65 | #dbConnectPasswordGLOBAL= | ||
66 | |||
67 | {{/code}} | ||
68 | |||
69 | Those properties, if used, allow you to specify the JDBC/EOF information for all of your models. See [[Best Practices-Properties Files>>doc:documentation.Home.Best Practices.Best Practices-Properties Files.WebHome]] | ||
70 | |||
71 | {{code}} | ||
72 | |||
73 | # Migrations | ||
74 | #er.migration.migrateAtStartup=true | ||
75 | #er.migration.createTablesIfNecessary=true | ||
76 | #er.migration.modelNames=YourModel | ||
77 | |||
78 | {{/code}} | ||
79 | |||
80 | Those properties are to enable support for [[migrations>>doc:documentation.Home.Frameworks.Project Wonder.Project WONDER-Frameworks-ERXMigration.WebHome]]. If you are using migrations but you have models where the schema already exist in the database, uncomment er.migration.modelNames and put in a list (comma separated) of the models you want to use migrations with, if you let this property commented, Wonder will try to migrate all of your models, which would generate errors for models where your schema already exist. | ||
81 | |||
82 | {{code}} | ||
83 | |||
84 | # Misc Components | ||
85 | #er.extensions.ERXWOForm.multipleSubmitDefault=true | ||
86 | |||
87 | {{/code}} | ||
88 | |||
89 | Set the "multipleSubmit" binding of WOForm to true for all WOForm instances. Uncomment that property if you don't want to remember to set that dreaded binding on every form. | ||
90 | |||
91 | {{code}} | ||
92 | |||
93 | #er.extensions.ERXWORepetition.checkHashCodes=true | ||
94 | |||
95 | {{/code}} | ||
96 | |||
97 | Help with backtracking issues by adding not only the current index, but also the current object's hash code to the element id (see ERXWORepetition API). | ||
98 | |||
99 | {{code}} | ||
100 | |||
101 | #er.extensions.ERXWORepetition.raiseOnUnmatchedObject=true | ||
102 | |||
103 | {{/code}} | ||
104 | |||
105 | If this property is set to true, an ERXWORepetition.UnmatchedObjectException} is thrown if notFoundMarker is bound, that is used for the item in the repetition. (see ERXWORepetition API). | ||
106 | |||
107 | {{code}} | ||
108 | |||
109 | #er.extensions.ERXWORepetition.eoSupport=true | ||
110 | |||
111 | {{/code}} | ||
112 | |||
113 | Try to use globalIDs to determine the hashCode for EOs. | ||
114 | |||
115 | {{code}} | ||
116 | |||
117 | #er.component.clickToOpen=true | ||
118 | #wolips.password=wo | ||
119 | |||
120 | {{/code}} | ||
121 | |||
122 | Enable support for [[doc:WONDER.Click to Open]][[Click to Open >>doc:documentation.Home.WOLips Tutorials.Click to Open.WebHome]]support in WOLips. | ||
123 | |||
124 | {{code}} | ||
125 | |||
126 | # ERJavaMail | ||
127 | er.javamail.centralize=true | ||
128 | er.javamail.adminEmail=admin@yourhost.com | ||
129 | er.javamail.debugEnabled=false | ||
130 | er.javamail.smtpHost=your.smtpserver.com | ||
131 | er.javamail.smtpAuth=false | ||
132 | er.javamail.smtpUser= | ||
133 | er.javamail.smtpPassword= | ||
134 | |||
135 | {{/code}} | ||
136 | |||
137 | Check [[Project WONDER-Frameworks-ERJavaMail>>doc:documentation.Home.Frameworks.ERJavaMail Framework.WebHome]] for an explanation. | ||
138 | |||
139 | {{code}} | ||
140 | |||
141 | # Log4j Configuration | ||
142 | log4j.loggerFactory=er.extensions.logging.ERXLogger$Factory | ||
143 | log4j.rootCategory=INFO,A1 | ||
144 | log4j.appender.A1=er.extensions.logging.ERXConsoleAppender | ||
145 | log4j.appender.A1.layout=er.extensions.logging.ERXPatternLayout | ||
146 | log4j.appender.A1.layout.ConversionPattern=%d{MMM dd HH:mm:ss} %$[%#] %-5p %c %x - %m%n | ||
147 | |||
148 | # Log4j Categories | ||
149 | # Here are a few log4j sub-categories that are interesting. | ||
150 | # Don't forget that in developement mode this file will get reloaded | ||
151 | # everytime it changes, so if you say want to turn adaptor debugging | ||
152 | # on in the middle of the app simply set the below category to debug. | ||
153 | # Very handy. | ||
154 | # Base Category | ||
155 | log4j.logger.er=INFO | ||
156 | |||
157 | {{/code}} | ||
158 | |||
159 | Standard Log4J stuff. Log4J is bundled into ERJars, and make it sure that you don't have a copy of it in /Library/Java/Extensions or it will conflict with the one from ERJars, especially if the one in /Library/Java/Extensions is older than the one in ERJars. | ||
160 | |||
161 | {{code}} | ||
162 | |||
163 | # ERExtensions | ||
164 | # Transaction - Switching this to debug will start the sql ouputting. | ||
165 | log4j.logger.er.transaction.adaptor.EOAdaptorDebugEnabled=DEBUG | ||
166 | |||
167 | {{/code}} | ||
168 | |||
169 | With this set to DEBUG, all SQL stuff sent to your RDMS will show up in the console (or where you tell Log4J to send his stuff). | ||
170 | |||
171 | {{code}} | ||
172 | |||
173 | # Fixes - Turning this on will show all the models that are loaded | ||
174 | log4j.logger.er.extensions.fixes.ERSharedEOLoader=INFO | ||
175 | |||
176 | {{/code}} | ||
177 | |||
178 | See ERXSharedEOLoader.java in ERExtensions. |