Version 29.1 by Sergiu Dumitriu on 2011/03/30

Show last authors
1 {{velocity}}
2 $xwiki.ssx.use("ReleaseNotesXWikiEnterprise30M3")
3 {{/velocity}}
4
5 {{box cssClass="floatinginfobox" title="**Contents**"}}
6 {{toc/}}
7 {{/box}}
8
9 = New and Noteworthy (since XWiki Enterprise 2.7) =
10
11 == Redesign of the Administration Application ==
12
13 We have redesigned the administration application providing a new layout and new icons (designed by Ciprian Amaritei). Administration sections are now grouped in several categories displayed using a vertical menu. Each section has been modified in order to be consistent with our [[Vertical Layout Usage Form Standard>>platform:DevGuide.VerticalForms]].
14
15 [[[[image:administration.png||class="screenshot"]]>>attach:administration.png]]
16
17 The WYSIWYG content editor can now be easily configured from the wiki administration. Look for the //WYSIWYG Editor// section under //Applications// category. You may still need to scan the list of available [[plugins and features>>platform:AdminGuide.WysiwygEditor#HPluginsandFeatures]] in order to know what to enable. In the future we're hoping to integrate this information in the administration section.
18
19 [[[[image:wysiwygConfig.png||class="screenshot"]]>>attach:wysiwygConfig.png]]
20
21 == Message Stream ==
22
23 Users can now post status messages which will be visible on the main dashboard and on the user profile page.
24
25 [[image:messageStream.png||class="screenshot"]]
26
27 Users can follow each other's activity streams.
28
29 [[image:follow.png||class="screenshot"]]
30
31 In order to see the members of your network and the network activity you can use the //Network// menu:
32
33 [[image:networkMenu.png||class="screenshot"]]
34
35 which leads you to the //Network// tab from the user profile page:
36
37 [[[[image:network.png||class="screenshot"]]>>attach:network.png]]
38
39 == Dashboard Editing ==
40
41 A visual editor for dashboards has been implemented and is accessible by editing the page that contains a dashboard. Advanced users should use the //Inline// edit mode to edit the dashboard. In edit mode gadgets can be dragged by their title bar and moved around in different columns of the dashboard.
42
43 [[image:ReleaseNotesXWikiEnterprise30M3@moveGadget.png||class="screenshot"]]
44
45 A new gadget can be added by choosing from the macros in the wiki, using a dialog similar to the WYSIWYG editor macro dialog.
46
47 [[image:ReleaseNotesXWikiEnterprise30M3@addGadget.png||class="screenshot"]]
48
49 A gadget can be removed from the dashboard using the gadget settings action.
50
51 [[image:ReleaseNotesXWikiEnterprise30M3@removeGadget.png||class="screenshot"]]
52
53 == Search Live Suggestions ==
54
55 This release introduces the first iteration on a "suggestions as you type" feature for the search box.
56
57 [[image:ReleaseNotesXWikiEnterprise30M3@searchSuggest.png||class="screenshot"]]
58
59 The suggestions proposed come from several sources, configurable in the wiki administration under the //Search Suggest// section. The sources configured by default include "Document name", "Document content", "Attachment name", "Attachment content" and "Users".
60
61 == Gallery Macro and Office Presentation Viewer ==
62
63 The [[Gallery Macro>>extensions:Extension.Gallery Macro]] helps you create a simple image gallery where images are displayed using a slide-show view. You can use images from any source, both internal (attached to a wiki page) and external. The gallery macro collects all the images it finds in the macro content. The [[Office Macro>>extensions:Extension.Office Macro]] has been improved to use the gallery macro when displaying office presentations:
64
65 [[image:extensions:Extension.Office Macro@presentation.png||class="screenshot"]]
66
67 == Attachment Selector Macro ==
68
69 [[Attachment Selector Macro>>extensions:Extension.Attachment Selector Macro]] is now bundled with XWiki Enterprise.
70
71 [[image:extensions:Extension.Attachment Selector Macro@choosefile.png||class="screenshot"]]
72
73 The UI for changing the user's avatar has been modified to use the attachment selector macro:
74
75 [[image:ReleaseNotesXWikiEnterprise30RC1@changeAvatar.png||class="screenshot"]]
76
77 == WYSIWYG Editor Improvements ==
78
79 === Cross-Browser Support ===
80
81 The WYSIWYG content editor now has better support for Opera, Chrome and Safari browsers.
82
83 === Improved Macro Support ===
84
85 In order to fix [[XWIKI-5691>>http://jira.xwiki.org/jira/browse/XWIKI-5691]] and a few related bugs we had to refactor the way macros are displayed inside the rich text area of the WYSIWYG content editor. Along with this we introduced a few improvements in the way users interact with macros. Here's a list of changes:
86
87 * Macros are displayed now 100% like in view mode. Previously we were using a button HTML element to protect the macro output which gave macro output an inherent box layout. This was noticeable especially for multi-line in-line macros. This is fixed now:(((
88 [[image:ReleaseNotesXWikiEnterprise30M3@inLineMacro.png||class="screenshot"]]
89 )))
90 * Macros that have output are emphasized only when hovered or selected.
91 * You can navigate the macro output with the arrow keys. The macro output feels like the rest of the content except that you can't edit it in place.
92 * You can copy content from the macro output.
93 * Press Enter to edit macro.
94 * Press Space to toggle between collapsed and expanded state.
95 * Ctrl + Shift + R reloads the macros.
96 * Ctrl + Shift + E expands all/selected macros.
97 * Ctrl + Shift + C collapses all/selected macros.
98 * Ctrl + Shift + M to open the insert macro wizard.
99
100 Known issues that we'd like to fix for 3.0 final:
101
102 * You can cut text from macro output.
103 * You can drag text into/from macro output.
104 * Placing the caret before/after a macro is still tricky.
105
106 == FileSystem Attachment Storage ==
107
108 {{warning}}
109 This is an experimental feature. We need more users to test it before we can enable it by default.
110 {{/warning}}
111
112 The goal of this store is to allow very large documents to be added as page attachments in the wiki. The FileSystem Attachment Store is fully implemented, with all the attachment-handling parts available as filesystem stores: the main attachment content store, the attachment history store, and the attachment trash store.
113
114 The main benefit of this store is that it allows to upload and store attachments of any size, without overloading the database, and without requiring huge amounts of memory. A disadvantage is that searching inside attachments is no longer possible using standard HQL (as is done in the ##DatabaseSearch## implementation); this continues to be possible using Lucene.
115
116 It's still experimental as we need more feedback on how well it works before we can declare it production-ready, so we welcome any feedback from users, good or bad.
117
118 To enable it:
119
120 * Make the following changes to your ##xwiki.cfg## file, under the "Storage" section:(((
121 {{code language="none"}}
122 #-# The attachment storage.
123 xwiki.store.attachment.hint=file
124
125 #-# The attachment versioning storage. Use 'void' to disable attachment versioning.
126 xwiki.store.attachment.versioning.hint=file
127
128 #-# The attachment recycle bin storage
129 xwiki.store.attachment.recyclebin.hint=file
130 {{/code}}
131 )))
132 * Start your wiki and as Admin, open the ##{{{<your site>/xwiki/bin/edit/XWiki/XWikiPreferences?editor=object}}}## page and scroll down until you find ##Maximum Upload Size##, and change that number to something huge like: ##99999999999999999##. Then click save at the bottom of the page.
133
134 == Extension Manager ==
135
136 {{warning}}
137 This is an experimental feature at this stage and the UI part is not done yet.
138 {{/warning}}
139
140 * Add minimalistic XAR support
141 ** Install/uninstall/upgrade a xar extension
142 ** The xar can have infinite number of pages and attachments, it's just limited by the size of each attachment right now until the storage API support fully streamed attachments
143 ** Very limited upgrade: import adds a new version to make sure not to loose anything, there is no real document merging handling
144 ** Delete pages from old version not in the new version when upgrading a XAR extension
145 * Add multiwiki support (install any extension on a specific wiki only)
146 * Add extension events
147
148 [[image:ReleaseNotesXWikiEnterprise30M3@extensionmanager.png||class="screenshot"]]
149
150 See [[Extension Module documentation>>extensions:Extension.Extension Module]] for more details.
151
152 == Rendering and Commons Top Level Projects ==
153
154 We have created a new top level project called [[XWiki Commons>>commons:Main.WebHome]], which contains libraries that are generic enough to be reused outside of the XWiki project. New modules are now located under the ##org.xwiki.commons## group id at http://maven.xwiki.org/releases/org/xwiki/commons/ .
155
156 We have also created a new top level project called [[XWiki Rendering>>rendering:Main.WebHome]], which contains a generic rendering engine. New modules are now located under the ##org.xwiki.rendering## group Id, at [[http://maven.xwiki.org/releases/org/xwiki/rendering/]]. The modules in this project are independent of the XWiki core (they only rely on the new xwiki-commons modules), so they can be easily reused.
157
158 == Miscellaneous ==
159
160 Besides the major features described above this release brings lots of bug fixes as well as improvements in various domains of XWiki, including PDF export, color theme editor and UI consistency. See the release notes for 3.0 [[Milestone 1>>ReleaseNotesXWikiEnterprise30M1]], [[Milestone 2>>ReleaseNotesXWikiEnterprise30M2]], [[Milestone 3>>ReleaseNotesXWikiEnterprise30M3]] and [[Release Candidate 1>>ReleaseNotesXWikiEnterprise30RC1]] for details.
161
162 == Translations ==
163
164 * The following translations have been updated: ##ca##, ##cs##, ##de##, ##es##, ##fr##, ##gl##, ##hi##, ##hr##, ##it##, ##lv##, ##nl##, ##no##, ##pl##, ##pt##, ##ro##, ##ru##, ##sk##, ##sv##, ##uk##, ##vi##, ##zh##, ##zh_TW##.
165
166 = Known issues =
167
168 * [[Bugs we know about>>http://jira.xwiki.org/jira/secure/IssueNavigator.jspa?reset=true&&type=1&pid=10010&resolution=-1&sorter/field=updated&sorter/order=DESC]]
169
170 = Test Report =
171
172 You can check the [[manual test report>>TestReports.ManualTestReportXE30]] to learn about what was tested and the results on various browsers.
173
174 = Backward Compatibility and Migration Notes =
175
176 == General Notes ==
177
178 {{warning}}
179 If you're running in a multiwiki setup you'll also need to define the property //xwiki.store.migration.databases=all// to your //xwiki.cfg// file or explicitly name all databases to be migrated as in //xwiki.store.migration.databases=db1,db2,...//.
180 {{/warning}}
181
182 You may also want to [[import the default wiki XAR>>Main.Download]] in order to benefit from the improvements listed above.
183
184 {{warning}}
185 Always make sure you compare your //xwiki.cfg// file with the newest version since some configuration parameters were added. Note you should add //xwiki.store.migration=1// so that XWiki will attempt to automatically migrate your current database to the new schema. Make sure you backup your Database before doing anything.
186 {{/warning}}
187
188 == Migration Notes ==
189
190 === The Velocity engine was updated to version 1.7 ===
191
192 {{warning}}
193 We upgraded Velocity to version 1.7 which brings several changes that are not backwards compatible.
194 {{/warning}}
195
196 We had to fix the following problems on the velocity code bundled with XWiki Enteprise:
197
198 * Escape quotes in interpolated strings (both ' and ") by doubling them ('' and "") (See [[VELOCITY-555>>https://issues.apache.org/jira/browse/VELOCITY-555]])
199 * [[XABLOG-117>>http://jira.xwiki.org/jira/browse/XABLOG-117]]: Blog application broken under Velocity 1.7
200 * [[XAADMINISTRATION-200>>http://jira.xwiki.org/jira/browse/XAADMINISTRATION-200]]: Configurable sections are broken ("configuration cannot be displayed because it was last edited by Admin who doesn't have permission to edit this page")
201 * [[XE-806>>http://jira.xwiki.org/jira/browse/XE-806]]: Upgrade activity macro to work with velocity 1.7
202
203 ==== Macro evaluation strategy ====
204
205 The main change is that Velocity 1.7 changed the way macro evaluations work. While before it was more flexible with many possible outcomes depending on what parameters were passed, and how they were used inside the macro, the current version simplified a lot the internal logic of variable assignments inside macros, which resulted in a critical regression for us. The same change was introduced between 1.6.0 and 1.6.1, but was reverted in 1.6.2 when we notified them of the regression, with the decision to go further with the change in 1.7.
206
207 To better understand the kind of code that doesn't work, take this example:
208
209 {{code language="none"}}
210 #macro(callBySharing $x)
211 #set($x = 'a')
212 #end
213 #set($y = 'y')
214 #callBySharing($y)
215
216 $y -> 'y' in 1.7
217 $y -> 'a' in 1.6.2, 1.6.0 and before)
218 {{/code}}
219
220 But:
221
222 {{code language="none"}}
223 #set($x = 'x')
224 #callBySharing($x)
225
226 $x -> 'a' in all versions
227 {{/code}}
228
229 This means that only macros that are supposed to assign and return a value in one of its formal parameters will stop working, and only when the formal and actual parameters have different names. Macros with signatures like:
230
231 {{code language="none"}}
232 #macro(computeSomething $fromValue1 $fromValue2 $putResultHere)
233 {{/code}}
234
235 The only macro in the global ##macros.vm## that was broken by this change was ###setVariableFromRequest##, which is already fixed in the released version.
236
237 Now there's also a generic ###setVariable ("variableName" $value)## macro which can be used to emulate the call by sharing behavior in custom macros. How to use it:
238
239 Suppose you had a macro like this:
240
241
242 {{code language="none"}}
243 #macro(isBlogGlobal $blogDoc $isGlobal)
244 #set($isGlobal = false)
245 #getBlogProperty($blogDoc 'blogType' '' $discard)
246 #if($discard == 'global')
247 #set($isGlobal = true)
248 #end
249 #end
250 {{/code}}
251
252 Here ##$isGlobal## is the output variable which now doesn't always work. The updated version of the macro can be written as:
253
254 {{code language="none"}}
255 #macro(isBlogGlobal $blogDoc $isGlobal)
256 #set ($result = false)
257 #getBlogProperty($blogDoc 'blogType' '' $discard)
258 #if($discard == 'global')
259 #set($result = true)
260 #end
261 #set ($isGlobal = $util.null)
262 #setVariable ("$isGlobal" $result)
263 #end
264 {{/code}}
265
266 Pay attention to the last two lines in the macro.
267
268 In Velocity, when rendering ##$variable##, where ##$variable## is ##undefined## or ##null##, will cause the variable name to be printed instead. As it happens, when inside a macro, what gets printed is the name of the actual parameter (the one passed in the macro call), and not the formal one (the one declared in the macro definition). So, whenever ##$isGlobal## is rendered as a string, the name of the actual parameter is obtained.
269
270 ###set ($isGlobal = $util.null)## will make sure that no matter what the previous value of the variable was, ##$isGlobal## will be ##null## from this point forward, and ##"$isGlobal"## will output the name of the actual parameter.
271
272 When calling ###setVariable ("$isGlobal" $result)##, the first parameter will contain the name of the actual parameter used when calling ###isBlogGlobal##.
273
274 Inside the ###setVariable## macro, the wanted variable is assigned using ###evaluate##.
275
276 ==== Quotes and apostrophes inside strings ====
277
278 The second change is the escape syntax used inside strings for quotes and apostrophes. While before this used to work:
279
280 {{code language="none"}}
281 {{velocity}}
282 #set ($a = "He said \"maybe\"")
283 $a => He said \"maybe\"
284 {{/velocity}}
285 {{/code}}
286
287 now this snippet would throw an exception. Trying to escape an apostrophe inside an apostrophe-delimited string would have failed even before.
288
289 In Velocity 1.7 it is possible to place both single and double quotes inside a string, by doubling that character. For example:
290
291 {{code language="none"}}
292 {{velocity}}
293 #set ($a = "He said ""maybe""")
294 $a => He said "maybe"
295
296 #set ($b = 'that''s funny')
297 $b => that's funny
298 {{/velocity}}
299 {{/code}}
300
301 === Update dashboard macro calls ===
302
303 Because of the implementation of [[XWIKI-5938>>http://jira.xwiki.org/jira/browse/XWIKI-5938]], when upgrading from 2.x to 3.0, if the dashboard macro was used in its form from 2.5 (with the macro calls in the source of the page), it needs to be manually converted to the objects form.
304
305 {{todo}}
306 Anca, please give more details about the update steps.
307 {{/todo}}
308
309 === Update web.xml ===
310
311 Due to the package rename done for [[XWIKI-6158>>http://jira.xwiki.org/jira/browse/XWIKI-6158]] when upgrading from 2.x to 3.0 you must edit your ##web.xml## file and replace all occurrences of ##com.xpn.xwiki.wysiwyg## with ##org.xwiki.wysiwyg##.
312
313 === XWiki Preferences ===
314
315 Several rarely used and deprecated preferences have been removed from the ##XWiki.XWikiPreferences## class, in order to make way for more useful settings. If you were using any of these preferences, and you want to import the new ##XWikiPreferences## document when upgrading, you should re-add that property manually afterwards. Here's the list of removed properties:
316
317 * ##convertmail## - used by the old invitation manager, never really used in practice outside Curriki
318 * ##editbox_height## and ##editbox_width## - configurations for the size of the textarea elements, now fully styled with CSS
319 * ##macros_languages##, ##macros_mapping##, ##macros_groovy##, ##macros_velocity##, ##macros_wiki##, ##macros_wiki2## - old macro polymorphism mechanism available in the ##xwiki/1.0## rendering and the WYSIWYG editor
320 * ##menu## - configuration for the left-hand section in the extinct ##dodo## skin
321 * ##notification_pages## - mechanism for registering ##xwiki/1.0## documents containing Groovy code as notification listeners; both the syntax and the notification mechanism are deprecated, consider rewriting these listeners as components
322 * ##pageWidth## - unused customization for the layout of the skin, an early experiment for the old ##finch## skin, never fully used or exposed
323 * ##renderXWikiGroovyRenderer##, ##renderXWikiRadeoxRenderer##, ##renderXWikiVelocityRenderer## - customizations for the ##xwiki/1.0## rendering process
324 * ##webbgcolor## - old setting for the extinct ##dodo## skin
325
326 == API Breakages ==
327
328 The following xwiki-core APIs were modified since XWiki Enterprise 2.7 (API breakages in modules that were moved to Rendering or Commons top level projects are not included):
329
330 {{code language="none"}}
331 ERROR: 8001: org.xwiki.officeimporter.OfficeImporter: Class org.xwiki.officeimporter.OfficeImporter removed
332 ERROR: 8001: org.xwiki.officeimporter.OfficeImporterFilter: Class org.xwiki.officeimporter.OfficeImporterFilter removed
333 ERROR: 7002: org.xwiki.officeimporter.OfficeImporterVelocityBridge: Method 'public java.lang.String getLastErrorMessage()' has been removed
334 ERROR: 7002: org.xwiki.officeimporter.OfficeImporterVelocityBridge: Method 'public boolean importDocument(byte[], java.lang.String, java.lang.String, java.util.Map)' has been removed
335 ERROR: 7002: org.xwiki.officeimporter.builder.PresentationBuilder: Method 'public org.xwiki.officeimporter.document.XDOMOfficeDocument build(java.io.InputStream, java.lang.String)' has been removed
336 ERROR: 7002: org.xwiki.officeimporter.builder.PresentationBuilder: Method 'public org.xwiki.officeimporter.document.XDOMOfficeDocument build(byte[])' has been removed
337 ERROR: 7002: org.xwiki.officeimporter.builder.XDOMOfficeDocumentBuilder: Method 'public org.xwiki.officeimporter.document.XDOMOfficeDocument build(byte[], org.xwiki.bridge.DocumentName, boolean)' has been removed
338 ERROR: 7002: org.xwiki.officeimporter.builder.XHTMLOfficeDocumentBuilder: Method 'public org.xwiki.officeimporter.document.XHTMLOfficeDocument build(byte[], org.xwiki.bridge.DocumentName, boolean)' has been removed
339 ERROR: 7012: org.xwiki.officeimporter.openoffice.OpenOfficeConverter: Method 'public boolean isMediaTypeSupported(java.lang.String)' has been added to an interface
340 ERROR: 8001: org.xwiki.officeimporter.openoffice.OpenOfficeDocumentConverter: Class org.xwiki.officeimporter.openoffice.OpenOfficeDocumentConverter removed
341 ERROR: 7002: org.xwiki.officeimporter.openoffice.OpenOfficeManager: Method 'public org.artofsolving.jodconverter.OfficeDocumentConverter getDocumentConverter()' has been removed
342 ERROR: 7002: org.xwiki.officeimporter.splitter.XDOMOfficeDocumentSplitter: Method 'public java.util.Map split(org.xwiki.officeimporter.document.XDOMOfficeDocument, int[], java.lang.String, org.xwiki.bridge.DocumentName)' has been removed
343 ERROR: 7012: org.xwiki.bridge.DocumentModelBridge: Method 'public org.xwiki.rendering.syntax.Syntax getSyntax()' has been added to an interface
344 ERROR: 7012: org.xwiki.bridge.DocumentModelBridge: Method 'public org.xwiki.rendering.block.XDOM getXDOM()' has been added to an interface
345 ERROR: 7002: org.xwiki.container.Request: Method 'public org.xwiki.url.XWikiURL getURL()' has been removed
346 ERROR: 7002: com.xpn.xwiki.api.XWiki: Method 'public java.lang.Object getExoPortalService(java.lang.String)' has been removed
347 ERROR: 7002: com.xpn.xwiki.api.XWiki: Method 'public java.lang.Object getExoService(java.lang.String)' has been removed
348 ERROR: 7002: com.xpn.xwiki.api.XWiki: Method 'public java.lang.Object getPortalService(java.lang.String)' has been removed
349 ERROR: 7002: com.xpn.xwiki.api.XWiki: Method 'public java.lang.Object getService(java.lang.String)' has been removed
350 ERROR: 7002: com.xpn.xwiki.api.XWikiCompatibilityAspect: Method 'public java.lang.Object ajc$interMethod$com_xpn_xwiki_api_XWikiCompatibilityAspect$com_xpn_xwiki_api_XWiki$getPortalService(com.xpn.xwiki.api.XWiki, java.lang.String)' has been removed
351 ERROR: 7002: com.xpn.xwiki.api.XWikiCompatibilityAspect: Method 'public java.lang.Object ajc$interMethod$com_xpn_xwiki_api_XWikiCompatibilityAspect$com_xpn_xwiki_api_XWiki$getService(com.xpn.xwiki.api.XWiki, java.lang.String)' has been removed
352 ERROR: 7002: com.xpn.xwiki.api.XWikiCompatibilityAspect: Method 'public java.lang.Object ajc$interMethodDispatch1$com_xpn_xwiki_api_XWikiCompatibilityAspect$com_xpn_xwiki_api_XWiki$getPortalService(com.xpn.xwiki.api.XWiki, java.lang.String)' has been removed
353 ERROR: 7002: com.xpn.xwiki.api.XWikiCompatibilityAspect: Method 'public java.lang.Object ajc$interMethodDispatch1$com_xpn_xwiki_api_XWikiCompatibilityAspect$com_xpn_xwiki_api_XWiki$getService(com.xpn.xwiki.api.XWiki, java.lang.String)' has been removed
354 ERROR: 7002: com.xpn.xwiki.pdf.api.PdfExport: Method 'public byte[] convertToStrictXHtml(byte[], com.xpn.xwiki.XWikiContext)' has been removed
355 ERROR: 7002: com.xpn.xwiki.pdf.api.PdfExport: Method 'public java.lang.String convertToStrictXHtml(java.lang.String)' has been removed
356 ERROR: 7002: com.xpn.xwiki.pdf.api.PdfExport: Method 'public byte[] convertXHtmlToXMLFO(byte[], com.xpn.xwiki.XWikiContext)' has been removed
357 ERROR: 7002: com.xpn.xwiki.pdf.api.PdfExport: Method 'public java.lang.String convertXHtmlToXMLFO(java.lang.String, com.xpn.xwiki.XWikiContext)' has been removed
358 ERROR: 7005: com.xpn.xwiki.pdf.api.PdfExport: Parameter 3 of 'public void export(com.xpn.xwiki.doc.XWikiDocument, java.io.OutputStream, int, com.xpn.xwiki.XWikiContext)' has changed its type to com.xpn.xwiki.pdf.api.PdfExport$ExportType
359 ERROR: 7005: com.xpn.xwiki.pdf.api.PdfExport: Parameter 3 of 'public void exportHtml(java.lang.String, java.io.OutputStream, int, com.xpn.xwiki.XWikiContext)' has changed its type to com.xpn.xwiki.pdf.api.PdfExport$ExportType
360 ERROR: 7002: com.xpn.xwiki.pdf.api.PdfExport: Method 'public void exportXHtml(byte[], java.io.OutputStream, int, com.xpn.xwiki.XWikiContext)' has been removed
361 {{/code}}
362
363 The following XWiki GWT APIs were modified since XWiki Enterprise 2.7:
364
365 {{code language="none"}}
366 ERROR: 6011: org.xwiki.gwt.user.client.ui.rta.RichTextArea: Field DISABLED has been removed, but it was previously a constant
367 ERROR: 7002: org.xwiki.gwt.wysiwyg.client.RichTextEditorController: Method 'protected void initTextArea()' has been removed
368 ERROR: 7012: org.xwiki.gwt.wysiwyg.client.Strings: Method 'public java.lang.String gadget()' has been added to an interface
369 ERROR: 7012: org.xwiki.gwt.wysiwyg.client.Strings: Method 'public java.lang.String gadgetEditDialogCaption()' has been added to an interface
370 ERROR: 7012: org.xwiki.gwt.wysiwyg.client.Strings: Method 'public java.lang.String gadgetInsertActionLabel()' has been added to an interface
371 ERROR: 7012: org.xwiki.gwt.wysiwyg.client.Strings: Method 'public java.lang.String gadgetInsertDialogCaption()' has been added to an interface
372 ERROR: 7012: org.xwiki.gwt.wysiwyg.client.Strings: Method 'public java.lang.String gadgetInsertDialogTitle()' has been added to an interface
373 ERROR: 7012: org.xwiki.gwt.wysiwyg.client.Strings: Method 'public java.lang.String gadgetNoGadgetSelected()' has been added to an interface
374 ERROR: 7012: org.xwiki.gwt.wysiwyg.client.Strings: Method 'public java.lang.String gadgetTitleDescription()' has been added to an interface
375 ERROR: 7012: org.xwiki.gwt.wysiwyg.client.Strings: Method 'public java.lang.String gadgetTitleLabel()' has been added to an interface
376 ERROR: 7012: org.xwiki.gwt.wysiwyg.client.Strings: Method 'public java.lang.String macroCollapseAllShortcutKeyLabel()' has been added to an interface
377 ERROR: 7012: org.xwiki.gwt.wysiwyg.client.Strings: Method 'public java.lang.String macroCollapseShortcutKeyLabel()' has been added to an interface
378 ERROR: 7012: org.xwiki.gwt.wysiwyg.client.Strings: Method 'public java.lang.String macroEditShortcutKeyLabel()' has been added to an interface
379 ERROR: 7012: org.xwiki.gwt.wysiwyg.client.Strings: Method 'public java.lang.String macroExpandAllShortcutKeyLabel()' has been added to an interface
380 ERROR: 7012: org.xwiki.gwt.wysiwyg.client.Strings: Method 'public java.lang.String macroExpandShortcutKeyLabel()' has been added to an interface
381 ERROR: 7012: org.xwiki.gwt.wysiwyg.client.Strings: Method 'public java.lang.String macroInsertShortcutKeyLabel()' has been added to an interface
382 ERROR: 7012: org.xwiki.gwt.wysiwyg.client.Strings: Method 'public java.lang.String macroRefreshShortcutKeyLabel()' has been added to an interface
383 ERROR: 8001: org.xwiki.gwt.wysiwyg.client.plugin.Plugin: Class org.xwiki.gwt.wysiwyg.client.plugin.Plugin removed
384 ERROR: 8001: org.xwiki.gwt.wysiwyg.client.plugin.PluginFactory: Class org.xwiki.gwt.wysiwyg.client.plugin.PluginFactory removed
385 ERROR: 8001: org.xwiki.gwt.wysiwyg.client.plugin.PluginFactoryManager: Class org.xwiki.gwt.wysiwyg.client.plugin.PluginFactoryManager removed
386 ERROR: 8001: org.xwiki.gwt.wysiwyg.client.plugin.PluginManager: Class org.xwiki.gwt.wysiwyg.client.plugin.PluginManager removed
387 ERROR: 8001: org.xwiki.gwt.wysiwyg.client.plugin.UIExtension: Class org.xwiki.gwt.wysiwyg.client.plugin.UIExtension removed
388 ERROR: 6011: org.xwiki.gwt.wysiwyg.client.plugin.color.ColorCell: Field SELECTED_STYLE_NAME has been removed, but it was previously a constant
389 ERROR: 7002: org.xwiki.gwt.wysiwyg.client.plugin.color.ColorPicker: Method 'public java.lang.String convertToHex(java.lang.String)' has been removed
390 ERROR: 7002: org.xwiki.gwt.wysiwyg.client.plugin.color.ColorPlugin: Method 'protected org.xwiki.gwt.user.client.ui.rta.cmd.Executable getBackColorExecutable()' has been removed
391 ERROR: 8001: org.xwiki.gwt.wysiwyg.client.plugin.color.MozillaColorPlugin: Class org.xwiki.gwt.wysiwyg.client.plugin.color.MozillaColorPlugin removed
392 ERROR: 8001: org.xwiki.gwt.wysiwyg.client.plugin.color.exec.BackColorExecutable: Class org.xwiki.gwt.wysiwyg.client.plugin.color.exec.BackColorExecutable removed
393 ERROR: 8001: org.xwiki.gwt.wysiwyg.client.plugin.color.exec.HiliteColorExecutable: Class org.xwiki.gwt.wysiwyg.client.plugin.color.exec.HiliteColorExecutable removed
394 ERROR: 7004: org.xwiki.gwt.wysiwyg.client.plugin.macro.MacroDisplayer: In method 'public MacroDisplayer()' the number of arguments has changed
395 ERROR: 7004: org.xwiki.gwt.wysiwyg.client.plugin.macro.MacroDisplayer: In method 'protected org.xwiki.gwt.dom.client.Element createReadOnlyBox()' the number of arguments has changed
396 ERROR: 7002: org.xwiki.gwt.wysiwyg.client.plugin.macro.MacroDisplayer: Method 'protected java.lang.String getMacroContainerTagName()' has been removed
397 ERROR: 7002: org.xwiki.gwt.wysiwyg.client.plugin.macro.MacroDisplayer: Method 'public void setTextArea(org.xwiki.gwt.user.client.ui.rta.RichTextArea)' has been removed
398 ERROR: 4001: org.xwiki.gwt.wysiwyg.client.plugin.macro.MacroPlugin: Removed com.google.gwt.event.dom.client.DoubleClickHandler from the set of implemented interfaces
399 ERROR: 4001: org.xwiki.gwt.wysiwyg.client.plugin.macro.MacroPlugin: Removed com.google.gwt.event.shared.EventHandler from the set of implemented interfaces
400 ERROR: 7002: org.xwiki.gwt.wysiwyg.client.plugin.macro.MacroPlugin: Method 'public void onDoubleClick(com.google.gwt.event.dom.client.DoubleClickEvent)' has been removed
401 ERROR: 4001: org.xwiki.gwt.wysiwyg.client.plugin.macro.MacroSelector: Removed com.google.gwt.event.dom.client.MouseDownHandler from the set of implemented interfaces
402 ERROR: 7002: org.xwiki.gwt.wysiwyg.client.plugin.macro.MacroSelector: Method 'public void onMouseDown(com.google.gwt.event.dom.client.MouseDownEvent)' has been removed
403 ERROR: 8001: org.xwiki.gwt.wysiwyg.client.plugin.submit.exec.EnableExecutable: Class org.xwiki.gwt.wysiwyg.client.plugin.submit.exec.EnableExecutable removed
404 ERROR: 8001: org.xwiki.gwt.wysiwyg.client.plugin.submit.exec.ResetExecutable: Class org.xwiki.gwt.wysiwyg.client.plugin.submit.exec.ResetExecutable removed
405 ERROR: 7004: org.xwiki.gwt.wysiwyg.client.wiki.WikiService: In method 'public java.util.List getMatchingPages(java.lang.String, int, int)' the number of arguments has changed
406 ERROR: 7004: org.xwiki.gwt.wysiwyg.client.wiki.WikiService: In method 'public java.util.List getRecentlyModifiedPages(int, int)' the number of arguments has changed
407 ERROR: 7004: org.xwiki.gwt.wysiwyg.client.wiki.WikiServiceAsync: In method 'public void getMatchingPages(java.lang.String, int, int, com.google.gwt.user.client.rpc.AsyncCallback)' the number of arguments has changed
408 ERROR: 7004: org.xwiki.gwt.wysiwyg.client.wiki.WikiServiceAsync: In method 'public void getRecentlyModifiedPages(int, int, com.google.gwt.user.client.rpc.AsyncCallback)' the number of arguments has changed
409 ERROR: 7004: org.xwiki.gwt.wysiwyg.client.wiki.WikiServiceAsyncCacheProxy: In method 'public void getMatchingPages(java.lang.String, int, int, com.google.gwt.user.client.rpc.AsyncCallback)' the number of arguments has changed
410 ERROR: 7004: org.xwiki.gwt.wysiwyg.client.wiki.WikiServiceAsyncCacheProxy: In method 'public void getRecentlyModifiedPages(int, int, com.google.gwt.user.client.rpc.AsyncCallback)' the number of arguments has changed
411 ERROR: 6004: org.xwiki.gwt.dom.client.Style: Changed type of field BACKGROUND_COLOR from java.lang.String to org.xwiki.gwt.dom.client.Property
412 {{/code}}

Get Connected