Wiki source code of Configuration

Version 149.1 by Silvia Macovei on 2014/12/15

Show last authors
1 {{box cssClass="floatinginfobox" title="**Contents**"}}
2 {{toc/}}
3 {{/box}}
4
5 Once you have XWiki [[installed>>Installation]] you'll want to configure it. Configuration can be done in 2 ways:
6
7 * by stopping the XWiki instance and editing either the ##xwiki/WEB-INF/xwiki.cfg## file or the ##xwiki/WEB-INF/xwiki.properties## one, and then restarting XWiki. Note that ##xwiki.cfg## was the historical file containing the configuration option but we're moving away from it and in due time all the XWiki configuration options will be found in ##xwiki.properties##
8 * by logging in as a user with admin rights and going to the administration page using the top level menu. You can also go directly to //{{{http://localhost:8080/xwiki/bin/admin/XWiki/XWikiPreferences}}}//. This allows to keep the server running while making the changes.(((
9 {{info}}
10 * Some configurations are only accessible from the ##xwiki.cfg## and ##xwiki.properties## files and have no equivalent on the administration page.
11 * If you're a developer and need to understand how Configuration works in XWiki, check the [[Configuration Module Documentation>>extensions:Extension.Configuration Module]].
12 {{/info}}
13 )))You can verify some basic settings of your XWiki installation (on Tomcat, MySQL) using the [[Check Config and Indexes application>>extensions:Extension.Check Config And Indexes Application]].
14
15 There are various things you can configure:
16
17 = Enable superadmin account =
18
19 Edit the ##xwiki.cfg## file and enable the ##xwiki.superadminpassword## property. For example:
20
21 {{code language="none"}}
22 # Enable to allow superadmin. It is disabled by default as this could be a security breach if
23 # it were set and you forgot about it.
24 xwiki.superadminpassword=system
25 {{/code}}
26
27 When logging in, the username will be "superadmin" and the password will be the one you set in the ##xwiki.superadminpassword## property.
28
29 = Language settings =
30
31 To define the default language for your wiki go to the administration page, click on "Localization", locate the "Default Language" field and enter the language code for the language you wish to use. For example: "en" for English, "fr" for French, "de" for German, etc.
32
33 In addition you can configure your wiki to be multilingual. See the [[I18 user page>>Features.I18N]] for more information.
34
35 Last, you can also force your wiki to display only in one of the languages specified in the settings, by editing your ##WEB-INF/xwiki.cfg## file. Search for the "Internationalization" section, and you should see two commented settings that you can uncomment and set to 1:
36
37 {{code language="none"}}
38 #-# By default, XWiki chooses the language specified by the client (browser) in the Accept-Language HTTP header. This
39 #-# allows to use the default language of the wiki when the user didn't manually choose a language.
40 # xwiki.language.preferDefault=0
41
42 #-# Force only one of the supported languages to be accepted.
43 # xwiki.language.forceSupported=0
44 {{/code}}
45
46 = Date format =
47
48 To define the date format used in the interfaces, go to //Wiki -> Administer Wiki -> Localization//, locate the "Date format" field and enter the date format you wish to use. Examples:
49
50 |=Format|=Result
51 |MMMM dd, HH:mm|January 27, 12:27
52 |yyyy/MM/dd, HH:mm|2009/01/27, 12:27
53 |dd/MM/yyyy, HH:mm|27/01/2009, 12:27
54
55 [[More information about date formatting>>http://docs.oracle.com/javase/1.5.0/docs/api/java/text/SimpleDateFormat.html]].
56
57 = Enabling/Disabling Statistics =
58
59 To disable [[the Statistics feature>>extensions:Extension.Statistics Application]] edit your //xwiki.cfg// file and replace the following properties as shown here (to enable statistics, change ##0## to ##1##):
60
61 {{code}}
62 xwiki.stats=0
63 xwiki.stats.default=0
64 {{/code}}
65
66 where:
67
68 * ##xwiki.stats## controls whether statistics are on or off
69 * ##xwiki.stats.default## controls whether statistics are on or off by default for the current Wiki. This is useful in [[Virtual Wiki mode>>AdminGuide.Virtualization]]. A wiki can decide whether statistics are on or off by setting the "statistics" field in ##XWiki.XWikiPreferences##. If no such field is defined then the default value //xwiki.stats.default// is used.(((
70 {{info}}
71 There's currently no UI to set the statistics on or off for a given subwiki. Thus at the moment you'll need to do 2 things:
72 * Edit ##XWiki.XWikiPreferences## to add a new boolean property to the class, by going to //{{{http://localhost:8080/xwiki/bin/edit/XWiki/XWikiPreferences?editor=class}}}//
73 * Set the ##statistics## property to true by going to //{{{http://localhost:8080/xwiki/bin/edit/XWiki/XWikiPreferences?editor=object}}}// and setting the ##statistics## property to ##true##
74 {{/info}}
75 )))
76
77 = Optional Store Features =
78
79 == Document versioning ==
80
81 One of the key features of a wiki engine is the ability to keep all the history of a document, giving users the ability to see the evolution of a document, but also to revert changes. However, the history of an active wiki continuously grows and is usually much larger than the current version of the data. It is possible to disable the versioning feature in XWiki, which means that less storage space will be used, although it will not be possible to revert the document in case of vandalism.
82
83 To disable versioning edit //xwiki.cfg// and add {{code}}xwiki.store.versioning=0{{/code}}.
84
85 [[Attachment versioning>>platform:AdminGuide.Attachments#HVersions]] is also available and turned on by default.
86
87 == Document recycle bin ==
88
89 By default deleted documents are not permanently removed, but are placed in a //recycle bin//, from which they can later be removed or restored. To disable it, edit //xwiki.cfg// and add {{code}}xwiki.recyclebin=0{{/code}}.
90
91 {{info}}
92 Disabling the recycle bin will make it impossible to restore a deleted document, unless a database backup is available.
93 {{/info}}
94
95 By default, a deleted document can be permanently deleted right away by administrators, and after 7 days by regular users. To change these limits, edit //xwiki.cfg// and add:
96
97 {{code}}
98 # Admins must wait 3 days before being allowed to permanently delete
99 xwiki.store.recyclebin.adminWaitDays=3
100 # Normal users must also wait 3 days
101 xwiki.store.recyclebin.waitDays=3
102 {{/code}}
103
104 [[Attachment recycle bin>>platform:AdminGuide.Attachments#HDeletion]] is similar.
105
106 = Customizing the Skin =
107
108 See the [[Skin Guide>>AdminGuide.Skins]].
109
110 = Security configuration =
111
112 See the [[Security Guide>>AdminGuide.Security]].
113
114 If the users will be accessing XWiki using SSL (https) then you will have to change the way links are created so that external links do not redirect users back to the http page. This is accomplished by setting the ##xwiki.url.protocol## property in //xwiki.cfg//.
115
116 = Customizing Menus =
117
118 The first thing to understand is that menus depend on the skin you're using. If you're using the 1.0 skin it's likely you're using the [[Panels Application>>extensions:Extension.Panels Application]] to provide the different menu panels you see on the left or right of your wikis. Check the [[Panels Application>>extensions:Extension.Panels Application]] to know more on how to configure/modify them.
119
120 = Encoding =
121
122 See the [[Encoding Guide>>AdminGuide.Encoding]].
123
124 = User Authentication =
125
126 See the [[Authentication Guide>>AdminGuide.Authentication]].
127
128 == Customizing the Verified Registration Page (Since 2.2M2) ==
129
130 The Verified Registration Page is part of the [[Administration Application>>extensions:Extension.Administration Application]] and allows you to require users to fill in a captcha and validates user input on both the server side and the client side using Javascript. The configuration allows you to add fields and validation constraints to the fields which are there.
131
132 Since version 2.3M1 in order to turn on captcha you simply go to the administration page, click "Registration" and you will find a checkbox for turning on captcha along with other registation page related settings.
133
134 For more information about configuring the registration page you can visit the page on the [[Administration Application>>extensions:Extension.Administration Application]].
135
136 = Initial Groups =
137
138 You can set the default groups which new users will automatically be added to by changing the ##xwiki.users.initialGroups## parameter in your [[xwiki.cfg>>#HSamplexwiki.cfg]] file. To make all new users be added to the groups **XWiki.CoolPeople** and **XWiki.CommunityMembers** you will have to set the ##initialGroups## parameter like this:
139
140 (((
141 {{code language="none"}}
142 xwiki.users.initialGroups=XWiki.CoolPeople, XWiki.CommunityMembers
143 {{/code}}
144 )))
145
146 * Current members will not be automatically be added to these groups, only new members.
147 * The groups have to be created before being specified as initial groups.
148
149 = Logging =
150
151 See the [[Logging page>>Logging]].
152
153 = Configuring Interwiki links =
154
155 [[Interwiki linking>>http://en.wikipedia.org/wiki/InterWiki]] is a short hand syntax for linking to pages on other websites. For example, you could link to http://en.wikipedia.org/wiki/InterWiki just by typing ~[~[InterWiki@WikiPedia]].
156
157 {{info}}
158 Note that different lists have to be maintained to support this function in XWiki Syntax 1.0 and 2.x.
159 {{/info}}
160
161 {{warning}}
162 The link notation for Interwiki links has changed in XWiki Syntax 2.1. Links should look like this in XWiki Syntax 2.1: ~[~[interwiki:WikiPedia:InterWiki~]~].
163 {{/warning}}
164
165 == Interwiki links (XWiki Syntax 1.0) ==
166
167 Since XWiki renders wiki syntax using the [[Radeox>>http://codemonkeyism.com/forking-radeox-a-new-wiki-render-engine/]] engine, it supports Interwiki links in [[much the same way as SnipSnap>>http://snipsnap.org/space/InterWiki+HowTo]].
168
169 To configure Interwiki links on your wiki:
170
171 * Create a file named ##[location from where you start your container]/conf/**intermap.txt**##
172 * Fill ##intermap.txt## with content like:(((
173 {{code}}
174 IMDB http://us.imdb.com/Title?
175 OpenWiki http://openwiki.com/?
176 SourceForge http://sourceforge.net/
177 TWiki http://twiki.org/cgi-bin/view/
178 Why http://clublet.com/c/c/why?
179 Wiki http://c2.com/cgi/wiki?
180 WikiPedia http://www.wikipedia.com/wiki/
181 {{/code}}
182 )))You can of course add your own entries.
183
184 {{warning}}
185 Radeox's parser for ##intermap.txt## is very fragile. A blank line at the bottom of the file is enough to make it fall over.
186 {{/warning}}
187
188 Restart XWiki (you'll need to restart XWiki every time you change ##intermap.txt##) and try out an Interwiki link. If it does not work, check your ##xwiki.log## file. You'll see if ##conf/intermap.txt## could not be found, or if there was an error parsing it.
189
190 == Interwiki links (XWiki Syntax 2.x) ==
191
192 In order to use Interwiki links in the XWiki Syntax 2.x it is necessary to configure the appropriate list in your ##xwiki.properties## file. Look for the following section:
193
194 {{code language="none"}}
195 #-# [Since 2.5M2]
196 #-# InterWiki definitions in the format alias=URL
197 #-# See http://en.wikipedia.org/wiki/Interwiki_links for a definition of an InterWiki link
198 # Some examples:
199 # rendering.interWikiDefinitions = wikipedia = http://en.wikipedia.org/wiki/
200 # rendering.interWikiDefinitions = definition = http://www.yourdictionary.com/
201 {{/code}}
202
203 = Setting the default editor to use (Wiki or WYSIWYG) =
204
205 Starting with XWiki Enterprise 3.0, which introduced a revamp of the Administration, you can choose the default editor from "Configuration > Edit Mode Settings" (see below):
206
207 {{image reference="DefaultEditorStarting30.png"/}}
208
209 = Configure the WYSIWYG editor =
210
211 See [[WYSIWYG Editor Configuration>>WysiwygEditor]] page to find out how you can enable or disable editing features.
212
213 = Link URLs =
214
215 With parameters, you can specify what type of links will be made by XWiki.
216
217 == Reverse proxy setup ==
218
219 XWiki can and does run behind reverse proxies such as Apache mod_proxy. Usually the only thing needed is to have the ##x-forwarded-host## http header set to the external URL and XWiki will write links correctly.
220
221 Some reverse proxy software does not set this header and with XWiki Enterprise 3.0M3 or newer, you can use the ##xwiki.home## parameter in single wiki instances (non farm) to achieve the same result.
222
223 * **xwiki.home** - parameter in ##xwiki.cfg## will be used to make all links pointing to the main wiki on the server. If your main wiki is called "xwiki" but you want your users to access it by going to //www.yoursite.tld// instead of //xwiki.yoursite.tld//, you may set the ##xwiki.home## parameter to //{{{http://www.yoursite.tld/}}}//
224 Since XWiki Enterprise 3.0M3, this parameter will also work for single wiki instances and will be the final authority if the ##x-forwarded-host## parameter is not set.
225
226 * **xwiki.url.protocol** - with the ##xwiki.url.protocol## parameter in ##xwiki.cfg## you can explicitly specify the protocol as https. This is useful if you are running xwiki behind a reverse proxy which converts https into plain http so xwiki only sees http.
227
228 == Short URLs ==
229
230 It's possible to [[configure XWiki to use shorter URLs>>Main.ShortURLs]].
231
232 = Configure the names of database schemas =
233
234 {{info}}Since 1.6M1{{/info}} Sometimes, especially in enterprise environment, we need to control the names of database schemes, other than default.
235
236 * **xwiki.db**: name of database schema for the main wiki (including the name of the wiki in a non-virtual environment, otherwise the database name comes from the hibernate configuration file).
237 * **xwiki.db.prefix**: useful mainly for [[virtual wikis>>Virtualization]], where we have a separate database schema for each virtual wiki. This prefix is added to the database schema name after usual mapping between wiki names and schemas. Note that this is also applied to the main wiki database name.
238
239 = Turning off comments or attachments =
240
241 You need to change the ##XWiki.XWikiPreferences## class like this:
242
243 * Go to ##<server>/xwiki/bin/edit/XWiki/XWikiPreferences?editor=class##
244 * Add a new property called ##showcomments## (or ##showattachments## for turning off attachments) of type String Class
245 * Go to ##<server>/xwiki/bin/edit/XWiki/XWikiPreferences?editor=object&classname=XWiki.XWikiPreferences## and write no in the ##showcomments## (or ##showattachments##) field
246
247 That's it, the comments (or attachments) are gone. If you want to re-enable them, replace the "no" value with "yes".
248
249 = Configure "Version Summary" behavior =
250
251 When you're editing a page you can add a brief description of your changes in the "Version Summary" field by default (look at [[Features.PageEditing#HCommoneditactions]]). You can disable this feature by setting ##xwiki.editcomment=0## in ##xwiki.cfg##.
252
253 When the "Version Summary" feature is enabled, you can also set "Version Summary" to be mandatory by setting //xwiki.editcomment.mandatory=1// in //xwiki.cfg//. This will show a popup window with the request to write a short comment if there is no comment entered. It doesn't allow you to enter an empty comment. If you want a popup, but you also want to be able to enter an empty comment, set //xwiki.editcomment.suggested=1// in //xwiki.cfg//
254
255 If you set "Version Summary" as mandatory or suggested, you can also remove the "Version Summary" field and use only a popup window for writing a comment. Set //xwiki.editcomment.hidden=0// in //xwiki.cfg// to do this.
256
257 You can use the special fields in the //XWikiPreferences// object instead of editing //xwiki.cfg//. These fields are: //editcomment//, //editcomment_mandatory//, //editcomment_suggested// and //editcomment_hidden//.
258
259 = Configuring Directories =
260
261 XWiki uses a temporary directory to cache images after re-sizing them or store attachments after loading them out of the database. It also uses a permanent directory for storing data such as [[filesystem attachments>>AdminGuide.Attachments#HFilesystemAttachmentStore28SinceXWikiEnterprise3.0M229]] which must not be deleted and search indexes which are replaceable but laborious to create.
262
263 If there is no configured persistent directory, XWiki will use the temporary directory and log a warning on startup.
264
265 Since [[XWiki Enterprise 4.1M2>>http://www.xwiki.org/xwiki/bin/view/ReleaseNotes/ReleaseNotesXWikiEnterprise41M2#HBugfixesandimprovements]] the temporary files will be placed in a special sub-directory of the temporary directory called ##xwiki-temp##. This directory is periodically cleaned and all its content deleted so it is critical that it is not used for anything else.
266
267 To set the permanent directory, you have 2 options:
268
269 * Set the ##xwiki.data.dir## system property when starting the JVM (ie. the Servlet Container's JVM, specifically: ##-Dxwiki.data.dir=...##)
270 * Set the ##environment.permanentDirectory## property in your ##xwiki.properties## file
271
272 If the location points to a file or a directory to which XWiki does not have access, a warning will be printed in the log and the temporary directory will be used as a default.
273
274 The temporary directory is taken from the Servlet Container's ##javax.servlet.context.tempdir## Servlet Context property and thus must be configured at that level. If it is pointed to a file or directory where XWiki cannot write, it will print a warning in the log and attempt to use [[java.io.tmpdir>>http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/System.html#getProperties()]]. If this is not a writable directory, an exception will be thrown.
275
276 = Configuring the SMTP server =
277
278 If you're planning to use XWiki's feature that sends emails you'll need to configure the SMTP server used and the email address under which XWiki will send emails.
279
280 Starting with XWiki Enterprise 3.0 to configure these you need to go to the administration page (//{{{http://<server>/xwiki/bin/admin/XWiki/XWikiPreferences}}}//) and click on "Email" under "Configuration". Then modify the "Admin Email" field to set the email under which XWiki emails will be sent and also modify the "Server" field to set the SMTP server to use:
281
282 {{image reference="MailSettingsStarting30.png"/}}
283
284 Your mail server might require some additional options. For a full list of possible parameters, please check the documentation for JavaMail. The most common are listed here:
285
286 |= Option|=Description|=Examples
287 |mail.smtp.localhost|Local host name used in the SMTP HELO or EHLO command. Defaults to InetAddress.getLocalHost().getHostName(). Should not normally need to be set if your JDK and your name service are configured properly.|mail.smtp.localhost=yourhostname.com
288 |mail.smtp.auth|If true, attempt to authenticate the user using the AUTH command. Defaults to false.|mail.smtp.auth=true
289 |mail.smtp.starttls.enable|If true, enables the use of the STARTTLS command (if supported by the server) to switch the connection to a TLS-protected connection before issuing any login commands. Note that an appropriate trust store must be configured so that the client trusts the server's certificate. Defaults to false. |mail.smtp.starttls.enable=true
290
291 == Using Google SMTP server ==
292
293 For testing purposes, you can use your own GMail account as a SMTP server:
294
295 |=property|=value
296 |server|smtp.gmail.com
297 |port|587
298 |user|[email protected]
299 |password|yourpassword
300 |JavaMail properties|mail.smtp.starttls.enable=true
301
302 {{warning}}
303 **Never** use gmail in production, in place of a real SMTP server, since this could get your account blocked, and your personal email appears as the sender in Outlook and other email clients.
304 {{/warning}}
305
306 = Configuring WebDAV (since 1.7) =
307
308 WebDAV support has been added to XWiki beginning with XWiki Enterprise 1.7. It is very important to note that WebDAV is enabled by default.
309
310 == Securing WebDAV Server ==
311
312 XWiki's WebDAV implementation only supports the [[Basic Access Authentication>>http://en.wikipedia.org/wiki/Basic_access_authentication]] scheme for authenticating WebDAV clients. Because of this reason it is highly recommended that you employ a transport level security mechanism like SSL to protect your clients. You may consult your web application container's documentation to see how this can be achieved.
313
314 == Disabling WebDAV ==
315
316 To disable WebDAV support in your XWiki server, simply edit your ##web.xml## file and remove the url-mapping element for mapping webdav requests. The url-mapping element for WebDAV looks like this:
317
318 {{code language="xml"}}
319 <servlet-mapping>
320 <servlet-name>webdav</servlet-name>
321 <url-pattern>/webdav/*</url-pattern>
322 </servlet-mapping>
323 {{/code}}
324
325 = Redirections =
326
327 XWiki supports defining redirections for incoming requests. To activate this feature modify your ##xwiki.cfg## file and set the following property: {{code}}xwiki.preferences.redirect=1{{/code}}.
328 Then for each redirection you want to add, add a ##XWiki.GlobalRedirect## object to your main wiki's ##XWiki.XWikiPreferences## document. The ##XWiki.GlobalRedirect## object has 2 fields: ##pattern## and ##destination##. The URL received is matched on ##pattern## and if there's a match it's replaced with the value from ##destination##. XWiki then redirects to the new URL.
329
330 = Customizing the PDF export Look & Feel =
331
332 {{info}}
333 In the future we'll want to rewrite the PDF/RTF exports as renderers in the new [[Rendering Module architecture>>extensions:Extension.Rendering Module]]. When this happens this section will be upgraded.
334 {{/info}}
335
336 Here's how the PDF and RTF exports currently work:
337 [[image:XWikiExport201010290119.png||style="border: 1px solid silver;" width="720"]]
338
339 As shown in the diagram you can customize 4 parts:
340
341 * The templates, pdf.vm and the referenced subparts, pdfhtmlheader.vm, pdfheader.vm, pdffooter.vm, pdftoc.vm, pdfcover.vm, which can be overridden by a copy located in a custom skin
342 * The CSS used to render the content as PDF/RTF. There is no pdf.css by default. It could be created in /templates or in a skin; a copy in a skin, override the one located in /templates
343 * The XHTML2FO XSL transformation. The default one, xhtml2fo.xsl, is packed in core jar.
344 * The FOP XSL transformation. The default one, fop.xsl, is also packed in core jar.
345
346 After the export request triggers XWiki ExportAction, the content of your document is parsed by Velocity to get the initial XHTML content. **[[JTidy>>http://jtidy.sourceforge.net/]]**, a HTML/XHTML syntax checker and pretty printer, will clean the initial XHTML to make it XHTML compliant. No customization is possible in this step.
347
348 In order to provide your own customization you need to start by tweaking the default templates (they can also be copied to a new skin) and/or by creating a new [[XWiki Class>>platform:DevGuide.DataModel]]. To do that simply create a new page called //XWiki.PDFClass// and edit it in class mode (for ex. //{{{http://yourserver.com/xwiki/bin/edit/XWiki/PDFClass?editor=class}}}//). Add the following "Text Area" properties as needed (they are all optional so you only need to define the ones you need to use):
349
350 * ##style##: contains the CSS information that will overwrite or complement the default ##pdf.css## values if they exist. **[[css4j>>http://www.informatica.info/projects/css/]]**, a CSS API implementation for the Java&trade platform, will take care of this
351 * ##xhtmlxsl##: contains the XHTML to FO XSL overriding the default one. It is processed by **[[Apache Xalan>>http://xml.apache.org/xalan-j/]]**, a XSLT processor for transforming XML documents into HTML, text, or other XML document types. Since version 3.0M2 (see issue [[XWIKI-5918>>http://jira.xwiki.org/browse/XWIKI-5918||title="Impossible to override XSLT documents used in the PDF export process"]]) this field needs to be the actual content of the customized ##xhtml2fo.xsl##. Note that you can also use velocity in this field (useful to get the content of an attached .xsl file, which comes in very handy when you need to fill in a big file, since the limit of textarea properties is of 60 000 characters)
352 * ##fopxsl##: contains the FOP to PDF/RTF XSL overriding the default one. It is processed by **[[Apache FOP>>http://xmlgraphics.apache.org/fop/]]**.
353
354 {{warning}}
355 The name of the class must be ##XWiki.PDFClass##.
356 {{/warning}}
357
358 The good thing about fop/xsl-fo is that the xsl-fo document is independent of the final result. So we can export the wiki documents into many formats.
359
360 Then create a new page (say ##XWiki.PDFTemplate##) and add the ##XWiki.PDFClass## object to it.
361
362 Last use that page when calling the PDF/RTF export using the ##pdftemplate## parameter as in //{{{http://yourserver/xwiki/bin/export/Space/Page?format=pdf&language=en&pdftemplate=XWiki.PDFTemplate}}}//.
363
364 {{warning}}
365 No template is used by default.
366 {{/warning}}
367
368 {{info}}
369 As mentioned the ##style## property stores CSS code. The field is parsed by the Velocity engine, so you can use the [[current color theme>>extensions:Extension.Color Theme Application#HUsingColorThemesvariables]] to style your PDF. For example:
370
371 {{code language=css}}
372 #template('colorThemeInit.vm')
373 h2 {
374 color: $theme.titleColor;
375 }
376
377 td {
378 border-color: $theme.borderColor;
379 }
380 {{/code}}
381 {{/info}}
382
383 = Override the PDF Templates =
384
385 == Customize the PDF Footer ==
386
387 By default, the PDF footer will display the page number, the last author and the date on which the last modification was performed. In order to also display a customized message, the template ##pdffooter.vm## must be overridden. To do that, edit the skin class (e.g. //{{{http://yourserver/xwiki/bin/edit/XWiki/XWikiSkins?editor=class}}}//) and add a "TextArea" object named ##pdffooter.vm##:
388
389 [[image:OverridePDFFooter.png]]
390
391 After adding the ##pdffooter.vm## you might want to edit it (clicking on it opens a detailed editor) and e.g. give it a "Pretty name". In this editor, also set the "Editor" property to "pure text" as otherwise the WYSIWYG-Editor will be used:
392
393 [[image:OverridePDFFooterEdit1.png]]
394
395 Next, edit the skin page (e.g. //{{{http://yourserver/xwiki/bin/edit/XWiki/DefaultSkin?editor=object}}}//) and add the following code to the ##pdffooter.vm## property:
396
397 {{code}}
398 $msg.Page <span class="page-number"></span> - $msg.get('lastmodifiedby')
399 $xwiki.getUserName($tdoc.author, false)
400 $msg.get('lastmodifiedon')
401 $!xwiki.formatDate($tdoc.date)
402 <div>
403 <p>CustomName SAS. All rights reserved. Confidential and proprietary document. Printed Copies are not controlled.</p>
404 </div>
405 {{/code}}
406
407 To see the changes, just export any wiki page:
408
409 [[image:OverridePDFFooterFinal.png]]
410
411 == Customize the PDF Cover ==
412
413 This could be useful when you want for instance to add the company's logo to the PDF cover. In order to do this, the template ##pdfcover.vm## must be overridden. Just like for the PDF header, a "TextArea" property named ##pdfcover.vm## must be added to the XWiki.XWikiSkins class (e.g. //{{{http://yourserver/xwiki/bin/view/XWiki/XWikiSkins?editor=class}}}//).
414
415 [[image:OverridePDFCover.png]]
416
417 Next, edit the skin page (e.g. //{{{http://yourserver/xwiki/bin/edit/XWiki/DefaultSkin?editor=object}}}//) and add the following code to the ##pdfcover.vm## property:
418
419 {{code}}
420 <img src="$xwiki.getSkinFile("logo.png")"/>
421
422 <div style="text-align: center; width: 100%;">
423 <h1>
424 #set($title = "$!pdfdoc.display('title', 'rendered')")
425 #if($title == '')
426 $escapetool.xml($!doc.displayTitle)
427 #else
428 $escapetool.xml($title)
429 #end
430 </h1>
431 <br />
432 <br />
433 $!xwiki.getUserName($tdoc.author, false)
434 <br />
435 $!xwiki.formatDate($tdoc.date)
436 </div>
437 {{/code}}
438
439 The last step consists of attaching the image "logo.png" to the skin:
440
441 [[image:OverridePDFCoverFinal.png]]
442
443 == Override the CSS rules ==
444
445 In order to use your own template when exporting a page as PDF, you need to create a class in the XWiki space and name it PDFClass. Next, edit the page in "Class" mode (e.g. //{{{http://yourserver/xwiki/bin/edit/XWiki/PDFClass?editor=class}}}//) and add the following TextArea properties:
446
447 * style which contains the CSS rules that will override the default ##pdf.css## values; by default, there won't be a ##pdf.css## file on your filesystem, but you can create it in the folder ##\webapps\xwiki\templates\## or specify it in your skin page
448 * xhtmlxsl which contains the XHTML2FO XSL transformation that will override the default one
449 * fopxsl which contains the FOP XSL transformation that will override the default one
450
451 [[image:CreatePDFClass.png]]
452
453 Then, create the wiki page for which your want to customize the PDF export (e.g. XWiki.PDFTemplate) and add a "XWiki.PDFClass" object to it.
454
455 Supposing your wiki page contains a table, you have to edit it in "Wiki" mode and add a style parameter as shown below:
456
457 {{code}}
458 (% class="mytable" %)
459 |=Column 1|=Column 2
460 | data|data
461 {{/code}}
462
463 Next, edit the page in "Objects" mode and write your own CSS rules in the "style" property:
464
465 [[image:CreatePDFTemplate.png]]
466
467 Because no template is used by default, you need to specify the ##pdftemplate## parameter in the URL in order to use your own template: //{{{http://yourserver/xwiki/bin/export/XWiki/PDFTemplate?format=pdf&pdftemplate=XWiki.PDFTemplate}}}//.
468
469 [[image:CustomizedPDF.png]]
470
471 {{info}}
472 Even though RTF export is expected to work the same way, there are still some isues to be solved affecting how CSS properties control the final layout.
473 {{/info}}
474
475 == Override the xhtml2fo.xsl rules ==
476
477 As explained above, the entire code of [[xhtml2fo.xsl>>https://github.com/xwiki/xwiki-platform/blob/master/xwiki-platform-core/xwiki-platform-oldcore/src/main/resources/xhtml2fo.xsl]] needs to be copied in the xhtmlxsl textarea and then customized.
478
479 For example, to disable the generation of clickable URLs in the PDF, modify the follwing section:
480 {{code}} <xsl:template match="html:a[@href]" mode="transform">
481 <fo:basic-link xsl:use-attribute-sets="a-link">
482 <xsl:call-template name="process-a-link"/>
483 </fo:basic-link>
484 </xsl:template>{{/code}}
485 as
486 {{code}} <xsl:template match="html:a[@href]" mode="transform">
487 <fo:inline>
488 <xsl:call-template name="process-a-link"/>
489 </fo:inline>
490 </xsl:template>{{/code}}
491
492 = Configuring Wiki Syntaxes and default Syntax =
493
494 Starting with XWiki Enterprise 1.6 it's possible to configure the [[Wiki syntaxes>>platform:Main.XWikiSyntax]] that are available to the user. To do so edit the **##WEB-INF/xwiki.cfg##** file and configure the ##xwiki.rendering.syntaxes## property. It's a comma-separated list of syntax ids. For example:
495
496 {{code}}
497 xwiki.rendering.syntaxes = xwiki/1.0, xwiki/2.0, confluence/1.0, jspwiki/1.0, creole/1.0, mediawiki/1.0, xhtml/1.0, twiki/1.0
498 {{/code}}
499
500 In addition starting with XWiki Enterprise 1.8 it's possible to set the default syntax to be used when creating new documents. To do so edit the **##WEB-INF/xwiki.properties##** file and configure the ##core.defaultDocumentSyntax## property. For example to use XWiki Syntax 2.0 by default:
501
502 {{code}}
503 #-# Specifies the default syntax to use when creating new documents.
504 #-# Default value is xwiki/1.0.
505 core.defaultDocumentSyntax = xwiki/2.0
506 {{/code}}
507
508 {{warning}}
509 Hint: If it doesn't work check that you've edited the correct configuration file.
510 {{/warning}}
511
512 = Title behavior =
513
514 The following configuration parameters (found in ##xwiki.cfg##) can be used to control title behavior:
515
516 {{code language="none"}}
517 #-# Defines whether title handling should be using the compatibility mode or not. When the compatibility
518 #-# mode is active, if the document's content first header (level 1 or level 2) matches the document's title
519 #-# the first header is stripped.
520 xwiki.title.compatibility=1
521
522 #-# Defines the maximum header depth to look for when computing a document's title from its content. If no header
523 #-# equal or lower to the specified depth is found then the computed title falls back to the document name.
524 #-# The default value is 2.
525 # xwiki.title.headerdepth=2
526
527 #-# Defines if setting the title field must be mandatory in the WYSIWYG and Wiki editors. It is mandatory when this
528 #-# property is set to 1. The default value is 0 (not mandatory).
529 # xwiki.title.mandatory=0
530 {{/code}}
531
532 = Link Label Generation =
533
534 Starting with XWiki Syntax 2.0 it's possible to configure how labels are generated by the system when the user doesn't provide one (e.g. ##[[Main.WebHome]]##).
535
536 Her's an extract from the ##xwiki.properties## file which is where this feature is configurable:
537
538 {{code language="none"}}
539 #-# [Since 1.8RC2]
540 #-# Specifies how links labels are displayed when the user doesn't specify the label explicitely.
541 #-# Valid values:
542 #-# %w: wiki name
543 #-# %s: space name
544 #-# %p: page name
545 #-# %P: page name with spaces between camel case words, i.e. "My Page" iff the page name is "MyPage"
546 #-# %t: page title
547 #-#
548 #-# Note that if the page title is empty or not defined then it defaults to %p. This is also the case
549 #-# if the title cannot be retrieved for the document.
550 #-#
551 #-# The default is "%p". Some examples: "%s.%p", "%w:%s.%p".
552 # rendering.linkLabelFormat = %p
553 {{/code}}
554
555 = Rendering Cache =
556
557 See the [[Performance page>>platform:AdminGuide.Performances#HRenderingcache]].
558
559 = Allowed Pages for Inactive Users =
560
561 The //xwiki.cfg// configuration file includes a property called ##xwiki.inactiveuser.allowedpages##. This property can be used to build a whitelist of pages that can be read by inactive users. The format that should be used is a comma-separated list of pages that users that are marked as inactive are allowed to see.
562
563 This property is needed due to the fact that in XWiki, some users can be marked as inactive, for example when enabling user email verification in the administration. An inactive user has an account, but the account needs to be validated in order for the user to be able to access the wiki. Access rights do not apply to inactive users (they are recognized neither as XWikiGuest nor as members of XWikiAllGroup).
564
565 {{info}}
566 Inactive users are always allowed to see the //XWiki.AccountValidation// page in order to validate their account.
567 {{/info}}
568
569 = Rendering Transformations =
570
571 You can control which [[Transformations>>rendering:Main.Architecture]] are active (by default the [[Macro>>rendering:Main.Architecture]] and [[Icon>>rendering:Main.Transformations#HIconTransformation]] ones are active by default) by editing ##xwiki.properties##:
572
573 {{code language="none"}}
574 #-# [Since 2.6RC1]
575 #-# Controls what transformations will be executed when rendering content.
576 #-# A transformation modifies the parsed content. For example the Icon transformation replaces some characters with
577 #-# icons, a WikiWord transformation will automatically create links when it finds wiki words, etc.
578 #-# Note that the Macro transformation is a special transformation that replaces macro markers by the result of the
579 #-# macro execution. If you don't list it, macros won't get executed.
580 #-# The default value is: rendering.transformations = macro, icon
581 {{/code}}
582
583 For example if you wish to turn off the Icon Transformation in order to not render emoticons, you'd have to define the following property: {{code language="none"}}rendering.transformations = macro{{/code}}.
584
585 = Securing Groovy Scripts =
586
587 See:
588
589 * The [[Commons Groovy Module>>extensions:Extension.GroovyModuleCommons]]
590 * The [[Platform Groovy Module>>extensions:Extension.GroovyModulePlatform]]
591
592 = Sample xwiki.cfg =
593
594 {{code language="none"}}
595 #---------------------------------------
596 # Preamble
597 #
598 # This is the main old XWiki configuration file. Commented parameters show the default value, although some features
599 # might be disabled. To customize, uncomment and put your own value instead.
600
601
602 #---------------------------------------
603 # General wiki settings
604 #
605
606 #-# When the wiki is readonly, any updates are forbidden. To mark readonly, use one of: yes, 1, true
607 # xwiki.readonly=no
608
609 #-# [Since 1.6RC1] Defines the list of supported syntaxes
610 #-# Available syntaxes are:
611 #-# xwiki/1.0, xwiki/2.0, confluence/1.0, jspwiki/1.0, creole/1.0, mediawiki/1.0, twiki/1.0, xhtml/1.0, html/4.01, plain/1.0
612 xwiki.rendering.syntaxes = xwiki/1.0, xwiki/2.0
613
614 #-# List of groups that a new user should be added to by default after registering. Comma-separated list of group document
615 #-# names.
616 # xwiki.users.initialGroups=XWiki.XWikiAllGroup
617
618 #-# Should all users be considered members of XWiki.XWikiAllGroup, even if they don't have an associated object in the
619 #-# group's document?
620 # xwiki.authentication.group.allgroupimplicit=0
621
622 #-# Uncomment if you want to ignore requests for unmapped actions, and simply display the document
623 # xwiki.unknownActionResponse=view
624
625 #-# The encoding to use when transformin strings to and from byte arrays. This causes the jvm encoding to be ignored,
626 #-# since we want to be independend of the underlying system.
627 xwiki.encoding=UTF-8
628
629 #-# This parameter will activate the sectional editing.
630 xwiki.section.edit=1
631
632 #-# This parameter controls the depth of sections that have section editing.
633 #-# By default level 1 and level 2 sections have section editing.
634 xwiki.section.depth=2
635
636 #-# Enable backlinks storage, which increases the update time, but allows to keep track of inter document links.
637 xwiki.backlinks=1
638
639 #-# Enable document tags.
640 xwiki.tags=1
641
642
643 #---------------------------------------
644 # Storage
645 #
646
647 #-# Role hints that differentiate implementations of the various storage components. To add a new implementation for one
648 #-# of the storages, implement the appropriate interface and declare it in a components.xml file (using a role-hint other
649 #-# than 'default') and put its hint here.
650 #
651 #-# The main (documents) storage.
652 # xwiki.store.main.hint=default
653 #-# The attachment storage.
654 # xwiki.store.attachment.hint=default
655 #-# The document versioning storage.
656 # xwiki.store.versioning.hint=default
657 #-# The attachment versioning storage. Use 'void' to disable attachment versioning.
658 # xwiki.store.attachment.versioning.hint=default
659 #-# The document recycle bin storage.
660 # xwiki.store.recyclebin.hint=default
661 #-# The attachment recycle bin storage.
662 # xwiki.store.attachment.recyclebin.hint=default
663
664 #-# Whether the document recycle bin feature is activated or not
665 # xwiki.recyclebin=1
666 #-# Whether the attachment recycle bin feature is activated or not
667 # storage.attachment.recyclebin=1
668 #-# Whether the document versioning feature is activated or not
669 # xwiki.store.versioning=1
670 #-# Whether the attachment versioning feature is activated or not
671 # xwiki.store.attachment.versioning=1
672 #-# Whether the attachments should also be rolled back when a document is reverted.
673 # xwiki.store.rollbackattachmentwithdocuments=1
674
675 #-# The path to the hibernate configuration file.
676 # xwiki.store.hibernate.path=/WEB-INF/hibernate.cfg.xml
677
678 #-# Whether to update the database schema on startup. Useful when upgrading XWiki. as the mapping could change between
679 #-# versions, and this allows to automatically update the database. Should be disabled (=0) during normal operation to
680 #-# improve the startup time.
681 # xwiki.store.hibernate.updateschema=1
682
683 #-# Allow or disable custom mapping for particular XClasses. Custom mapping may increase the performance of certain
684 #-# queries when large number of objects from particular classes are used in the wiki.
685 # xwiki.store.hibernate.custommapping=1
686 #-# Dynamic custom mapping.
687 # xwiki.store.hibernate.custommapping.dynamic=0
688
689 #-# Put a cache in front of the document store. This greatly improves performance at the cost of memory consumption.
690 #-# Disable only when memory is critical.
691 # xwiki.store.cache=1
692
693 #-# Maximum number of documents to keep in the cache.
694 # xwiki.store.cache.capacity=100
695
696 #-# [Since 1.6M1]
697 #-# Force the database name for the main wiki in virtual mode and for the wiki itself in non virtual mode.
698 # xwiki.db=xwiki
699
700 #-# [Since 1.6M1]
701 #-# Add a prefix to all databases names of the wikis in virtual mode and to the wiki name in non virtual mode.
702 # xwiki.db.prefix=
703
704
705 #---------------------------------------
706 # Data migrations
707 #
708 # Similar to schema updates, this manipulates the actual data, and not just the layout of the database. Useful for
709 # migrating data to new formats, correct errors introduced in older versions, or even for schema updates that are not
710 # handled by velocity.
711
712 #-# Whether migrations are enabled or not. Should be enabled when upgrading, but for a better startup time it is better to
713 #-# disable them in production.
714 xwiki.store.migration=1
715
716 #-# Migration manager class. The default works with a Hibernate storage.
717 # xwiki.store.migration.manager.class=com.xpn.xwiki.store.migration.hibernate.XWikiHibernateMigrationManager
718
719 #-# Whether to exit after migration. Useful when a server should handle migrations for a large database, without going
720 #-# live afterwards.
721 # xwiki.store.migration.exitAfterEnd=0
722
723 #-# Indicate the list of databases to migrate.
724 #-# to upgrade all wikis database set xwiki.store.migration.databases=all
725 #-# to upgrade just some wikis databases set xwiki.store.migration.databases=xwiki,wiki1,wiki2
726 #-# Note: the main wiki is always migrated whatever the configuration.
727 # xwiki.store.migration.databases=
728
729 #---------------------------------------
730 # Internationalization
731 #
732
733 #-# By default, XWiki chooses the language specified by the client (browser) in the Accept-Language HTTP header. This
734 #-# allows to use the default language of the wiki when the user didn't manually choose a language.
735 # xwiki.language.preferDefault=0
736
737 #-# Force only one of the supported languages to be accepted.
738 # xwiki.language.forceSupported=0
739
740
741 #---------------------------------------
742 # Virtual wikis (farm)
743 #
744
745 #-# This parameter allows XWiki to operate in Hosting mode allowing to create multiple wikis having their own database and
746 #-# responding to different URLs
747 xwiki.virtual=0
748
749 #-# URL to redirect to when a requested wiki does not exist. This should be changed to a real page.
750 xwiki.virtual.redirect=http://127.0.0.1:9080/xwiki/bin/Main/ThisWikiDoesNotExist
751
752 #-# Forbidden names that should not be allowed when creating a new wiki.
753 # xwiki.virtual.reserved_wikis=
754
755 #-# How virtual wikis are mapped to different URLs. If set to 0 (the default), then virtual wikis have different domain
756 #-# names, in the format http://wikiname.myfarm.net/. If set to 1, then the domain is common for the entire farm, but the
757 #-# path contains the wiki name, in the format http://myfarm.net/xwiki/wiki/wikiname/.
758 #-# Note that you can configure the "/wiki/" part with xwiki.virtual.usepath.servletpath property.
759 # xwiki.virtual.usepath=0
760
761 #-# Configure the servlet action identifier for url path based multiwiki. It has also to be modified in web.xml.
762 # xwiki.virtual.usepath.servletpath=wiki
763
764 #---------------------------------------
765 # URLs
766 #
767
768 #-# The domain name to use when creating URLs to the default wiki. If set, the generated URLs will point to this server
769 #-# instead of the requested one. It should contain schema, domain and (optional) port, and the trailing /. For example:
770 #-# xwiki.home=http://www.xwiki.org/
771 #-# xwiki.home=http://wiki.mycompany.net:8080/
772 # xwiki.home=
773
774 #-# The name of the default URL factory that should be used.
775 # xwiki.urlfactory.serviceclass=com.xpn.xwiki.web.XWikiURLFactoryServiceImpl
776
777 #-# Force the protocol to use in the generated URLs. The right value is taken from the request URL, so setting this
778 #-# is not recommended in most cases.
779 #-# For example:
780 #-# xwiki.url.protocol=https
781 # xwiki.url.protocol=
782 #-# The name of the webapp to use in the generated URLs. The right value is taken from the request URL, so setting this
783 #-# is not recommended in most cases. If set, the value should contain a trailing /, but not a leading one. For example:
784 #-# xwiki.webapppath=xwiki/
785 # xwiki.webapppath=
786 #-# The default servlet mapping name to use in the generated URLs. The right value is taken from the request URL,
787 #-# preserving the requested servlet mapping, so setting this is not recommended in most cases. If set, the value should
788 #-# contain a trailing /, but not a leading one. For example:
789 #-# xwiki.servletpath=bin/
790 # xwiki.servletpath=
791 #-# The fallback servlet mapping name to use in the generated URLs. Unlike xwiki.servletpath, this is the value used when
792 #-# the correct setting could not be determined from the request URL. A good way to use this setting is to achieve short
793 #-# URLs, see http://platform.xwiki.org/xwiki/bin/Main/ShortURLs
794 # xwiki.defaultservletpath=bin/
795
796 #-# Whether the /view/ part of the URL should be included if the target action is 'view'.
797 # xwiki.showviewaction=1
798 #-# The name of the default space. This is displayed when the URL specifies a document, but not a space, or neither.
799 # xwiki.defaultweb=Main
800 #-# Hide the /Space/ part of the URL when the space is the default one. Warning: use 1 to hide, 0 to show.
801 # xwiki.usedefaultweb=0
802 #-# The name of the default page of a space. This is displayed when the URL specifies a space, but not a document, or neither.
803 # xwiki.defaultpage=WebHome
804 #-# Hide the /WebHome part of the URL when the document is the default one. Use 0 to hide, 1 to show.
805 # xwiki.usedefaultaction=0
806
807
808 #---------------------------------------
809 # Users
810 #
811
812 xwiki.inactiveuser.allowedpages=
813
814
815 #---------------------------------------
816 # Authentication and authorization
817 #
818
819 #-# Enable to allow superadmin. It is disabled by default as this could be a
820 #-# security breach if it were set and you forgot about it. Should only be enabled
821 #-# for recovering the Wiki when the rights are completely messed.
822 # xwiki.superadminpassword=system
823
824 #-# Authentication type. You can use 'basic' to always use basic authentication.
825 # xwiki.authentication=form
826
827 #-# Indicate if the authentication has do be done for each request
828 #-# 0: the default value, authentication is done only once by session.
829 #-# 1: the authentication is done for each request.
830 # xwiki.authentication.always=0
831
832 #-# Cookie encryption keys. You SHOULD replace these values with any random string,
833 #-# as long as the length is the same.
834 xwiki.authentication.validationKey=totototototototototototototototo
835 xwiki.authentication.encryptionKey=titititititititititititititititi
836
837 #-# Comma separated list of domains for which authentication cookies are set. This
838 #-# concerns mostly wiki farms. The exact meaning is that when a user logs in, if
839 #-# the current domain name corresponding to the wiki ends with one of the entries
840 #-# in this parameter, then the cookie is set for the larger domain. Otherwise, it
841 #-# is set for the exact domain name of the wiki.
842 #-#
843 #-# For example, suppose the cookiedomains is set to "mydomain.net". If I log in
844 #-# on wiki1.xwiki.com, then the cookie will be set for the entire mydomain.net
845 #-# domain, and if I visit wiki2.xwiki.com I will still be authenticated. If I log
846 #-# in on wiki1.otherdomain.net, then I will only be authenticated on
847 #-# wiki1.otherdomain.net, and not on wiki2.otherdomain.net.
848 #-#
849 #-# So you need this parameter set only for global authentication in a
850 #-# farm, there's no need to specify your domain name otherwise.
851 #-#
852 #-# Example: xwiki.authentication.cookiedomains=xwiki.org,myxwiki.org
853 xwiki.authentication.cookiedomains=
854
855 #-# This allows logout to happen for any page going through the /logout/ action, regardless of the document or the servlet.
856 #-# Comment-out if you want to enable logout only for /bin/logout/XWiki/XWikiLogout
857 #-# Currently accepted patterns:
858 #-# - /StrutsServletName/logout/ (this is usually /bin/logout/ and is the default setup)
859 #-# - /logout/ (this works with the short URLs configuration)
860 #-# - /wiki/SomeWikiName/logout/ (this works with path-based virtual wikis)
861 xwiki.authentication.logoutpage=(/|/[^/]+/|/wiki/[^/]+/)logout/*
862
863 #-# The group management class.
864 # xwiki.authentication.groupclass=com.xpn.xwiki.user.impl.xwiki.XWikiGroupServiceImpl
865 #-# Default value for exo:
866 # xwiki.authentication.groupclass=com.xpn.xwiki.user.impl.exo.ExoGroupServiceImpl
867
868 #-# The authentication management class.
869 # xwiki.authentication.authclass=com.xpn.xwiki.user.impl.xwiki.XWikiAuthServiceImpl
870 #-# Default value for exo:
871 # xwiki.authentication.authclass=com.xpn.xwiki.user.impl.exo.ExoAuthServiceImpl
872 #-# Default value for LDAP:
873 # xwiki.authentication.authclass=com.xpn.xwiki.user.impl.LDAP.XWikiLDAPAuthServiceImpl
874
875 #-# The authorization management class.
876 # xwiki.authentication.rightsclass=com.xpn.xwiki.user.impl.xwiki.XWikiRightServiceImpl
877
878 #-# If an unauthenticated user (guest) tries to perform a restricted action, by default the wiki redirects to the login
879 #-# page. Enable this to simply display an "unauthorized" message instead, to hide the login form.
880 # xwiki.hidelogin=false
881
882 #-# HTTP status code to sent when the authentication failed.
883 xwiki.authentication.unauthorized_code=200
884
885
886 #---------------------------------------
887 # Rendering
888 #
889
890 #-# Disable particular renderers (in the old rendering engine).
891 #-# Macro mapping
892 # xwiki.render.macromapping=1
893 #-# Velocity interpreter
894 # xwiki.render.velocity=1
895 #-# Groovy interpreter
896 # xwiki.render.groovy=1
897 #-# Plugin rendering
898 # xwiki.render.plugin=1
899 #-# Radeox wiki renderer
900 # xwiki.render.wiki=1
901 #-# Simple wiki syntax rendering
902 # xwiki.render.wikiwiki=0
903
904 #-# Maximum number of documents to keep in the rendered cache
905 # xwiki.render.cache.capacity=100
906
907 #-# Default target for external links. Use _blank to open external links in a new tab/window.
908 # xwiki.render.externallinks.defaulttarget=
909
910
911 #---------------------------------------
912 # Editing
913 #
914
915 #-# Minor edits don't participate in notifications.
916 # xwiki.minoredit=1
917
918 #-# Use edit comments
919 xwiki.editcomment=1
920
921 #-# Hide editcomment field and only use Javascript
922 # xwiki.editcomment.hidden=0
923
924 #-# Make edit comment mandatory
925 xwiki.editcomment.mandatory=0
926
927 #-# Make edit comment suggested (asks 1 time if the comment is empty.
928 #-# 1 shows one popup if comment is empty.
929 #-# 0 means there is no popup.
930 #-# This setting is ignored if mandatory is set
931 # xwiki.editcomment.suggested=0
932
933
934 #-------------------------------------------------------------------------------------
935 # LDAP
936 #-------------------------------------------------------------------------------------
937
938 #-# new LDAP authentication service
939 # xwiki.authentication.authclass=com.xpn.xwiki.user.impl.LDAP.XWikiLDAPAuthServiceImpl
940
941 #-# Turn LDAP authentication on - otherwise only XWiki authentication
942 #-# 0: disable
943 #-# 1: enable
944 # xwiki.authentication.ldap=1
945
946 #-# LDAP Server (Active Directory, eDirectory, OpenLDAP, etc.)
947 xwiki.authentication.ldap.server=127.0.0.1
948 xwiki.authentication.ldap.port=389
949
950 #-# LDAP login, empty = anonymous access, otherwise specify full dn
951 #-# {0} is replaced with the username, {1} with the password
952 xwiki.authentication.ldap.bind_DN=cn={0},department=USER,department=INFORMATIK,department=1230,o=MP
953 xwiki.authentication.ldap.bind_pass={1}
954
955 #-# Force to check password after LDAP connection
956 #-# 0: disable
957 #-# 1: enable
958 xwiki.authentication.ldap.validate_password=0
959
960 #-# only members of the following group will be verified in the LDAP
961 #-# otherwise only users that are found after searching starting from the base_DN
962 # xwiki.authentication.ldap.user_group=cn=developers,ou=groups,o=MegaNova,c=US
963
964 #-# [Since 1.5RC1, XWikiLDAPAuthServiceImpl]
965 #-# only users not member of the following group can autheticate
966 # xwiki.authentication.ldap.exclude_group=cn=admin,ou=groups,o=MegaNova,c=US
967
968 #-# base DN for searches
969 xwiki.authentication.ldap.base_DN=
970
971 #-# Specifies the LDAP attribute containing the identifier to be used as the XWiki name (default=cn)
972 # xwiki.authentication.ldap.UID_attr=cn
973
974 #-# [Since 1.5M1, XWikiLDAPAuthServiceImpl]
975 #-# Specifies the LDAP attribute containing the password to be used "when xwiki.authentication.ldap.validate_password" is set to 1
976 # xwiki.authentication.ldap.password_field=userPassword
977
978 #-# [Since 1.5M1, XWikiLDAPAuthServiceImpl]
979 #-# The potential LDAP groups classes. Separated by commas.
980 # xwiki.authentication.ldap.group_classes=group,groupOfNames,groupOfUniqueNames,dynamicGroup,dynamicGroupAux,groupWiseDistributionList
981
982 #-# [Since 1.5M1, XWikiLDAPAuthServiceImpl]
983 #-# The potential names of the LDAP groups fields containings the members. Separated by commas.
984 # xwiki.authentication.ldap.group_memberfields=member,uniqueMember
985
986 #-# retrieve the following fields from LDAP and store them in the XWiki user object (xwiki-attribute=ldap-attribute)
987 xwiki.authentication.ldap.fields_mapping=last_name=sn,first_name=givenName,email=mail
988
989 #-# [Since 1.3M2, XWikiLDAPAuthServiceImpl]
990 #-# on every login update the mapped attributes from LDAP to XWiki otherwise this happens only once when the XWiki account is created.
991 xwiki.authentication.ldap.update_user=1
992
993 #-# [Since 1.3M2, XWikiLDAPAuthServiceImpl]
994 #-# mapps XWiki groups to LDAP groups, separator is "|"
995 # xwiki.authentication.ldap.group_mapping=XWiki.XWikiAdminGroup=cn=AdminRole,ou=groups,o=MegaNova,c=US|\
996 # XWiki.Organisation=cn=testers,ou=groups,o=MegaNova,c=US
997
998 #-# [Since 1.3M2, XWikiLDAPAuthServiceImpl]
999 #-# time in s after which the list of members in a group is refreshed from LDAP (default=3600*6)
1000 # xwiki.authentication.ldap.groupcache_expiration=21800
1001
1002 #-# [Since 1.3M2, XWikiLDAPAuthServiceImpl]
1003 #-# - create : synchronize group membership only when the user is first created
1004 #-# - always: synchronize on every login
1005 # xwiki.authentication.ldap.mode_group_sync=always
1006
1007 #-# [Since 1.3M2, XWikiLDAPAuthServiceImpl]
1008 #-# if ldap authentication fails for any reason, try XWiki DB authentication with the same credentials
1009 xwiki.authentication.ldap.trylocal=1
1010
1011 #-# [Since 1.3M2, XWikiLDAPAuthServiceImpl]
1012 #-# SSL connection to LDAP server
1013 #-# 0: normal
1014 #-# 1: SSL
1015 # xwiki.authentication.ldap.ssl=0
1016
1017 #-# [Since 1.3M2, XWikiLDAPAuthServiceImpl]
1018 #-# The keystore file to use in SSL connection
1019 # xwiki.authentication.ldap.ssl.keystore=
1020
1021 #-# [Since 1.5M1, XWikiLDAPAuthServiceImpl]
1022 #-# The java secure provider used in SSL connection
1023 # xwiki.authentication.ldap.ssl.secure_provider=com.sun.net.ssl.internal.ssl.Provider
1024
1025
1026 #---------------------------------------
1027 # Cache
1028 # [DEPRECATED since 1.7M1: this way to configure cache provider is deprecated, you should use xwiki.properties instead.]
1029 #---------------------------------------
1030
1031 #-# [Since 1.5M2]
1032 #-# The cache component implementation to use as "normal" (can be local or distributed depending on the implementation)
1033 #-# cache component.
1034 # xwiki.cache.cachefactory.hint=jbosscache
1035
1036 #-# [Since 1.5M2]
1037 #-# The cache component to use as local cache component.
1038 # xwiki.cache.cachefactory.local.hint=jbosscache/local
1039
1040
1041 #---------------------------------------
1042 # WYSIWYG Editor configuration
1043 #
1044
1045 #-# You can configure the toolbars you wish to see in the WYSIWYG editor by defining the
1046 #-# xwiki.wysiwyg.toolbars property.
1047 #-# When not defined it defaults to:
1048 # xwiki.wysiwyg.toolbars=texttoolbar, listtoolbar, indenttoolbar, undotoolbar, titletoolbar, \
1049 # styletoolbar, horizontaltoolbar, attachmenttoolbar, macrostoolbar, \
1050 # tabletoolbar, tablerowtoolbar, tablecoltoolbar, linktoolbar
1051 #-# The full list of toolbars includes the one defined above and the following ones:
1052 #-# subtoolbar, findtoolbar, symboltoolbar
1053
1054
1055 #---------------------------------------
1056 # Skins & Templates configuration
1057 #
1058
1059 #-# The default skin to use when there's no value specified in the wiki preferences document. Note that the default
1060 #-# wiki already specifies a skin, so this setting is only valid for empty wikis.
1061 xwiki.defaultskin=colibri
1062
1063 #-# The default base for skins that don't specify a base skin. This is also the last place where a skin file is searched
1064 #-# if not found in the more specific skins.
1065 xwiki.defaultbaseskin=albatross
1066
1067 #-# Defines whether title handling should be using the compatibility mode or not. When the compatibility
1068 #-# mode is active, if the document's content first header (level 1 or level 2) matches the document's title
1069 #-# the first header is stripped.
1070 xwiki.title.compatibility=1
1071
1072 #---------------------------------------
1073 # Extensions
1074 #
1075
1076 #-# List of active plugins.
1077 xwiki.plugins=\
1078 com.xpn.xwiki.monitor.api.MonitorPlugin,\
1079 com.xpn.xwiki.plugin.skinx.JsSkinExtensionPlugin,\
1080 com.xpn.xwiki.plugin.skinx.JsSkinFileExtensionPlugin,\
1081 com.xpn.xwiki.plugin.skinx.CssSkinExtensionPlugin,\
1082 com.xpn.xwiki.plugin.skinx.CssSkinFileExtensionPlugin,\
1083 com.xpn.xwiki.plugin.feed.FeedPlugin,\
1084 com.xpn.xwiki.plugin.ldap.LDAPPlugin,\
1085 com.xpn.xwiki.plugin.google.GooglePlugin,\
1086 com.xpn.xwiki.plugin.flickr.FlickrPlugin,\
1087 com.xpn.xwiki.plugin.mail.MailPlugin,\
1088 com.xpn.xwiki.plugin.packaging.PackagePlugin,\
1089 com.xpn.xwiki.plugin.query.QueryPlugin,\
1090 com.xpn.xwiki.plugin.svg.SVGPlugin,\
1091 com.xpn.xwiki.plugin.charts.ChartingPlugin,\
1092 com.xpn.xwiki.plugin.fileupload.FileUploadPlugin,\
1093 com.xpn.xwiki.plugin.image.ImagePlugin,\
1094 com.xpn.xwiki.plugin.userdirectory.UserDirectoryPlugin,\
1095 com.xpn.xwiki.plugin.usertools.XWikiUserManagementToolsImpl,\
1096 com.xpn.xwiki.plugin.zipexplorer.ZipExplorerPlugin,\
1097 com.xpn.xwiki.plugin.autotag.AutoTagPlugin,\
1098 com.xpn.xwiki.plugin.lucene.LucenePlugin,\
1099 com.xpn.xwiki.plugin.diff.DiffPlugin,\
1100 com.xpn.xwiki.plugin.rightsmanager.RightsManagerPlugin,\
1101 com.xpn.xwiki.plugin.jodatime.JodaTimePlugin,\
1102 com.xpn.xwiki.plugin.scheduler.SchedulerPlugin,\
1103 com.xpn.xwiki.plugin.mailsender.MailSenderPlugin,\
1104 com.xpn.xwiki.plugin.activitystream.plugin.ActivityStreamPlugin, \
1105 com.xpn.xwiki.plugin.watchlist.WatchListPlugin, \
1106 com.xpn.xwiki.wysiwyg.server.plugin.WysiwygPlugin, \
1107 com.xpn.xwiki.plugin.tag.TagPlugin
1108
1109 #-# Enable light monitoring of the wiki performance. Records various statistics, like number of requests processed,
1110 #-# time spent in rendering or in the database, medium time for a request, etc. Disable for a minor increase of
1111 #-# performance and a bit of memory.
1112 # xwiki.monitor=1
1113
1114 #-# Maximum number of last requests to remember.
1115 # xwiki.monitor.lastlistsize=20
1116
1117 #-# Stats configuration allows to globally activate/deactivate stats module (launch storage thread, register events...).
1118 #-# Enabled by default.
1119 # xwiki.stats=1
1120 #-# When statistics are globally enabled, storage can be enabled/disabled by wiki using the XWikiPreference property "statistics".
1121 #-# Note: Statistics are disabled by default for improved performances/space.
1122 xwiki.stats.default=0
1123 #-# It is also possible to choose a different stats service to record statistics separately from XWiki.
1124 # xwiki.stats.class=com.xpn.xwiki.stats.impl.XWikiStatsServiceImpl
1125
1126 #-# This parameter will activate the eXo Platform integration
1127 xwiki.exo=0
1128
1129 #-# GraphViz plugin configuration. The GraphViz plugin is not configured by default.
1130 #-# To enable it, add "com.xpn.xwiki.plugin.graphviz.GraphVizPlugin" to the list of plugins
1131 #-# in the xwiki.plugins property.
1132 #-# Uncomment and set the locations of the Dot and Neato executables
1133 # xwiki.plugin.graphviz.dotpath=c:/Program Files/ATT/GraphViz/bin/dot.exe
1134 # xwiki.plugin.graphviz.neatopath=c:/Program Files/ATT/GraphViz/bin/neato.exe
1135
1136 xwiki.plugin.laszlo.baseurl=/openlaszlo/xwiki/
1137 xwiki.plugin.laszlo.path=c:/Program Files/Apache Software Foundation/Tomcat 5.0/webapps/openlaszlo/xwiki/
1138
1139 xwiki.plugin.image.cache.capacity=30
1140
1141 #-# Calendar Prev/Next Month bounds.
1142 #-# The calendar generates links to the previous/next months for a limited range, by default 6 months back and 12 months
1143 #-# after. A value of 0 means that there is no limit in that direction.
1144 # xwiki.calendar.bound.prev=6
1145 # xwiki.calendar.bound.next=12
1146
1147 #-# Lucene search engine
1148 #-# Location where to place the lucene index files. The default is the "lucene" subdirectory in the container's "work"
1149 #-# diectory. Change it if you want to store indexes in another place.
1150 # xwiki.plugins.lucene.indexdir=/usr/local/xwiki/lucene
1151 #-# The text analyzer to use for indexing.
1152 # xwiki.plugins.lucene.analyzer=org.apache.lucene.analysis.standard.StandardAnalyzer
1153 #-# The number of seconds to wait between reindexes. A smaller value ensures that new documents will be indexed faster,
1154 #-# but with a minor performance reduction. Adjust according to your wiki load.
1155 # xwiki.plugins.lucene.indexinterval=20
1156 #-# The maximum size of the indexing queue. After this limit is reached, the reindex thread will have to wait until the
1157 #-# queue is consumed. Note that this does not affect documents submitted through the notification mechanism, only the
1158 #-# full reindex option.
1159 # xwiki.plugins.lucene.maxQueueSize=1000
1160
1161 #-# [Since 2.0RC1]
1162 #-# Activity Stream plugin.
1163 #-# The Activity Stream plugin stores data in a dedicated table in the database. In virtual mode each wiki has it's own
1164 #-# database, the plugin can be configured to store its data into the database corresponding to the wiki, into the main
1165 #-# database (default: xwiki) or both. If the wiki is not running in virtual mode these options will not have any
1166 #-# effect. These options should not be both set to 0 (in this case the local store will be forced).
1167 #-# Important note: disabling storage in the main store will prevent the watchlist from retrieving events from subwikis.
1168 #-#
1169 #-# Default: 1
1170 # xwiki.plugin.activitystream.uselocalstore=1
1171 #-#
1172 #-# Default: 1
1173 # xwiki.plugin.activitystream.usemainstore=1
1174 #-#
1175 #-# Number of days the events should be kept (0 or any negative value: infinite duration)
1176 #-# Note: if this value is greater than 0 a scheduler job will be created, this job will then be fired every week to
1177 #-# delete events older than the configured value.
1178 #-# Default: 0
1179 # xwiki.plugin.activitystream.daystokeepevents=0
1180 {{/code}}
1181
1182 = Sample xwiki.properties =
1183
1184 {{code language="none"}}
1185 # This is the new XWiki configuration file. In the future it'll replace the old
1186 # xwiki.cfg file. However right now it's only used by some XWiki components.
1187 # As time progresses more and more component will get their configurations from
1188 # this file.
1189
1190 #-------------------------------------------------------------------------------------
1191 # Core
1192 #-------------------------------------------------------------------------------------
1193
1194 #-# [Since 1.8RC2]
1195 #-# Specifies the default syntax to use when creating new documents.
1196 #-# Default value is xwiki/2.0.
1197 # core.defaultDocumentSyntax = xwiki/1.0
1198
1199 #-------------------------------------------------------------------------------------
1200 # Rendering
1201 #-------------------------------------------------------------------------------------
1202
1203 #-# [Since 1.8RC2]
1204 #-# Specifies how links labels are displayed when the user doesn't specify the label explicitely.
1205 #-# Valid values:
1206 #-# %w: wiki name
1207 #-# %s: space name
1208 #-# %p: page name
1209 #-# %P: page name with spaces between camel case words, i.e. "My Page" iff the page name is "MyPage"
1210 #-# %t: page title
1211 #-#
1212 #-# Note that if the page title is empty or not defined then it defaults to %p. This is also the case
1213 #-# if the title cannot be retrieved for the document.
1214 #-#
1215 #-# The default is "%p". Some examples: "%s.%p", "%w:%s.%p".
1216 # rendering.linkLabelFormat = %p
1217
1218 #-# [Since 2.0M3]
1219 #-# Overrides default macro categories (Each macro has a default category already defined, for example
1220 #-# "presentation" for the Table of Contents Macro).
1221 #-#
1222 #-# Ex: To redefine the macro category for the TOC macro so that it'd be in the "My Category" category +
1223 #-# redefine the category for the Script Macro to be "My Other Category", you'd use:
1224 # rendering.macroCategories = toc:My Category
1225 # rendering.macroCategories = script:My Other Category
1226
1227 #-------------------------------------------------------------------------------------
1228 # Cache
1229 #-------------------------------------------------------------------------------------
1230
1231 #-# [Since 1.7M1]
1232 #-# The standard cache component implementation to use (can be local or distributed depending on the implementation).
1233 #-# The default standard cache implementation is JBoss Cache.
1234 # cache.defaultCache=jbosscache
1235
1236 #-# [Since 1.7M1]
1237 #-# The local cache implementation to use.
1238 #-# The default local cache implementation is JBoss Cache.
1239 # cache.defaultLocalCache=jbosscache/local
1240
1241 #----------------------------------------------------------------------------------
1242 # Settings for the OpenOffice server instance consumed by the OfficeImporter plugin
1243 #----------------------------------------------------------------------------------
1244
1245 #-# [Since 1.9M2]
1246 #-# Type of the openoffice server instance used by officeimporter plugin.
1247 #-# 0 - Internally managed server instance. (Default)
1248 #-# 1 - Externally managed (local) server instance.
1249 # openoffice.serverType=0
1250
1251 #-# [Since 1.9M2]
1252 #-# Port number used for connecting to the openoffice server instance.
1253 #-# Default port is 8100
1254 # openoffice.serverPort=8100
1255
1256 #-# [Since 1.9M2]
1257 #-# If the openoffice server should be started / connected upon XE start.
1258 #-# Default value is false
1259 # openoffice.autoStart=false
1260
1261 #-# [Since 1.8RC3]
1262 #-# Path to openoffice installation (serverType:0 only).
1263 #-# If no path is provided, a default value will be calculated based on the operating environment.
1264 # openoffice.homePath=/opt/openoffice.org3/
1265
1266 #-# [Since 1.8RC3]
1267 #-# Path to openoffice execution profile (serverType:0 only).
1268 #-# If no path is provided, a default value will be calculated based on the operating environment.
1269 # openoffice.profilePath=/home/user/.openoffice.org/3
1270
1271 #-# [Since 1.8RC3]
1272 #-# Maximum number of simultaneous conversion tasks to be handled by a single openoffice process (serverType:0 only).
1273 #-# Default value is 50
1274 # openoffice.maxTasksPerProcess=50
1275
1276 #-# [Since 1.8RC3]
1277 #-# Timeout for conversion tasks (in miliseconds) (serverType:0 only).
1278 #-# Default value is 30 seconds
1279 # openoffice.taskExecutionTimeout=30000
1280
1281 #-------------------------------------------------------------------------------------
1282 # Velocity
1283 #-------------------------------------------------------------------------------------
1284
1285 #-# [Since 2.0M1]
1286 #-# Velocity Tools that will be available from your scripts. The format is
1287 #-# velocity.tools.<name under which it'll be available in the context> = <class name>
1288 #-# Default values (no need to add them)
1289 #-# velocity.tools = listtool = org.apache.velocity.tools.generic.ListTool
1290 #-# velocity.tools = numbertool = org.apache.velocity.tools.generic.NumberTool
1291 #-# velocity.tools = datetool = org.apache.velocity.tools.generic.DateTool
1292 #-# velocity.tools = mathtool = org.apache.velocity.tools.generic.MathTool
1293 #-# velocity.tools = sorttool = org.apache.velocity.tools.generic.SortTool
1294 #-# velocity.tools = escapetool = org.apache.velocity.tools.generic.EscapeTool
1295 #-# velocity.tools = regextool = org.xwiki.velocity.tools.RegexTool
1296
1297 #-# [Since 2.0M1]
1298 #-# Velocity configuration properties. The format is
1299 #-# velocity.property.<Velocity property name> = <value>
1300 #-# Default values (no need to add them)
1301 #-# velocity.properties = resource.loader = webapp
1302 #-# velocity.properties = directive.set.null.allowed = true
1303 #-# velocity.properties = webapp.resource.loader.class = org.apache.velocity.tools.view.servlet.WebappLoader
1304 #-# velocity.properties = velocimacro.messages.on = false
1305 #-# velocity.properties = resource.manager.logwhenfound = false
1306 #-# velocity.properties = velocimacro.permissions.allow.inline.local.scope = true
1307 #-# velocity.properties = runtime.introspector.uberspect = org.xwiki.velocity.introspection.ChainingUberspector
1308 #-# velocity.properties = runtime.introspector.uberspect.chainClasses = org.apache.velocity.util.introspection.SecureUberspector,org.xwiki.velocity.introspection.DeprecatedCheckUberspector
1309
1310 #-------------------------------------------------------------------------------------
1311 # Events distribution
1312 #-------------------------------------------------------------------------------------
1313
1314 #-# [Since 2.0M3]
1315 #-# Indicate if the network distribution module is enabled or not.
1316 #-# By default remote events are disabled.
1317 # observation.remote.enabled = false
1318
1319 #-# [Since 2.0M3]
1320 #-# The list of events communication channels to start when the application starts.
1321 #-# By default no channel is configured.
1322 #-#
1323 #-# The default remote event distribution implementation is using JGroups and you'll need to drop your JGroups channel
1324 #-# xml files in the WEB-INF/observation/remote/jgroups/ directory. There's a README file in that directory with more
1325 #-# information.
1326 #-# Example: observation.remote.channels = public, cluster
1327
1328 #-# [Since 2.0M4]
1329 #-# The implementation of network adapter to use.
1330 #-# The default is jgroups.
1331 #-#
1332 #-# By default obnly jgroups is provided. To add one implements NetworkAdaptor componenet interface. The identifier provided in the configuration is matched with the component role hint.
1333 #-# Example: observation.remote.networkadapter = jgroups
1334
1335 #-------------------------------------------------------------------------------------
1336 # Administration
1337 #-------------------------------------------------------------------------------------
1338
1339 #-# [Since 2.2M2]
1340 #-# Enable captcha: true|false
1341 #-#
1342 #-# Captcha is disabled by default.
1343 #-# Example: captcha.enabled = true
1344 {{/code}}

Get Connected