Details
-
Bug
-
Resolution: Fixed
-
Low
-
5.4, 5.3.4
-
None
Description
In attachment you will find simple plugin project where you can find SetUpTest class. During running the test following exceptions occurr:
[INFO] [talledLocalContainer] 2013-12-12 10:15:36,637 INFO [http-1990-7] [admin.actions.plugins.UploadPluginAction] execute User 'admin' uploaded a new plugin: com.atlassian.confluence.plugin.func-test [INFO] [talledLocalContainer] 2013-12-12 10:15:48,946 INFO [http-1990-6] [confluence.rpc.auth.TokenAuthenticationInvocationHandler] invokeAuthenticatedMethod Executing remote API method [ reindex ] as user [ admin ] [INFO] [talledLocalContainer] 2013-12-12 10:15:49,094 ERROR [Indexer: 1] [xhtml.editor.macro.MacroParameterTypeParserImpl] resolveUrl URL '{widget:url=http://app.episodic.com/shows/13/episodes/pskcvfyj8x1p' was not valid, even after reencoding [INFO] [talledLocalContainer] -- url: /confluence/rpc/xmlrpc | userName: admin | method: reindex [INFO] [talledLocalContainer] 2013-12-12 10:15:49,097 WARN [Indexer: 1] [plugins.macrousage.extractor.MacroExtractor] processXhtml Exception extracting macro usages on 98305 [INFO] [talledLocalContainer] -- url: /confluence/rpc/xmlrpc | userName: admin | method: reindex [INFO] [talledLocalContainer] com.atlassian.confluence.content.render.xhtml.XhtmlException: RuntimeException occurred while performing an XHTML storage transformation (java.lang.RuntimeException: java.lang.RuntimeException: java.lang.RuntimeException: com.atlassian.confluence.content.render.xhtml.XhtmlException: com.atlassian.confluence.content.render.xhtml.editor.macro.InvalidMacroParameterException: Invalid parameter value for macro 'widget' parameter 'url' (type url): '{widget:url=http://app.episodic.com/shows/13/episodes/pskcvfyj8x1p') [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.StorageXhtmlTransformer.transform(StorageXhtmlTransformer.java:64) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.DefaultXhtmlContent.handleMacroDefinitions(DefaultXhtmlContent.java:221) [INFO] [talledLocalContainer] at sun.reflect.GeneratedMethodAccessor344.invoke(Unknown Source) [INFO] [talledLocalContainer] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [INFO] [talledLocalContainer] at java.lang.reflect.Method.invoke(Method.java:597) [INFO] [talledLocalContainer] at com.atlassian.plugin.osgi.hostcomponents.impl.DefaultComponentRegistrar$ContextClassLoaderSettingInvocationHandler.invoke(DefaultComponentRegistrar.java:129) [INFO] [talledLocalContainer] at com.sun.proxy.$Proxy241.handleMacroDefinitions(Unknown Source) [INFO] [talledLocalContainer] at sun.reflect.GeneratedMethodAccessor344.invoke(Unknown Source) [INFO] [talledLocalContainer] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [INFO] [talledLocalContainer] at java.lang.reflect.Method.invoke(Method.java:597) [INFO] [talledLocalContainer] at com.atlassian.plugin.osgi.bridge.external.HostComponentFactoryBean$DynamicServiceInvocationHandler.invoke(HostComponentFactoryBean.java:154) [INFO] [talledLocalContainer] at com.sun.proxy.$Proxy241.handleMacroDefinitions(Unknown Source) [INFO] [talledLocalContainer] at com.atlassian.confluence.plugins.macrousage.extractor.MacroExtractor.processXhtml(MacroExtractor.java:75) [INFO] [talledLocalContainer] at com.atlassian.confluence.plugins.macrousage.extractor.MacroExtractor.addFields(MacroExtractor.java:51) [INFO] [talledLocalContainer] at com.atlassian.confluence.plugin.descriptor.ExtractorModuleDescriptor$BackwardsCompatibleExtractor.addFields(ExtractorModuleDescriptor.java:42) [INFO] [talledLocalContainer] at com.atlassian.confluence.search.lucene.ConfluenceDocumentBuilder.extractWithLuceneExtractors(ConfluenceDocumentBuilder.java:130) [INFO] [talledLocalContainer] at com.atlassian.confluence.search.lucene.ConfluenceDocumentBuilder.getDocument(ConfluenceDocumentBuilder.java:100) [INFO] [talledLocalContainer] at com.atlassian.confluence.search.lucene.tasks.AddDocumentIndexTask.perform(AddDocumentIndexTask.java:43) [INFO] [talledLocalContainer] at com.atlassian.confluence.search.lucene.ReindexWorkBatch.indexCollection(ReindexWorkBatch.java:146) [INFO] [talledLocalContainer] at com.atlassian.confluence.search.lucene.ReindexWorkBatch$1.doInTransaction(ReindexWorkBatch.java:113) [INFO] [talledLocalContainer] at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:128) [INFO] [talledLocalContainer] at com.atlassian.confluence.search.lucene.ReindexWorkBatch.executeTransaction(ReindexWorkBatch.java:84) [INFO] [talledLocalContainer] at com.atlassian.confluence.search.lucene.ReindexWorkBatch.run(ReindexWorkBatch.java:72) [INFO] [talledLocalContainer] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439) [INFO] [talledLocalContainer] at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) [INFO] [talledLocalContainer] at java.util.concurrent.FutureTask.run(FutureTask.java:138) [INFO] [talledLocalContainer] at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) [INFO] [talledLocalContainer] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) [INFO] [talledLocalContainer] at java.lang.Thread.run(Thread.java:680) [INFO] [talledLocalContainer] Caused by: java.lang.RuntimeException: java.lang.RuntimeException: java.lang.RuntimeException: java.lang.RuntimeException: com.atlassian.confluence.content.render.xhtml.XhtmlException: com.atlassian.confluence.content.render.xhtml.editor.macro.InvalidMacroParameterException: Invalid parameter value for macro 'widget' parameter 'url' (type url): '{widget:url=http://app.episodic.com/shows/13/episodes/pskcvfyj8x1p' [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.transformers.ThrowExceptionOnFragmentTransformationError.handle(ThrowExceptionOnFragmentTransformationError.java:13) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.transformers.DefaultFragmentTransformer.transformFragment(DefaultFragmentTransformer.java:175) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.transformers.DefaultFragmentTransformer.transform(DefaultFragmentTransformer.java:129) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.StorageXhtmlTransformer.transform(StorageXhtmlTransformer.java:44) [INFO] [talledLocalContainer] ... 28 more [INFO] [talledLocalContainer] Caused by: java.lang.RuntimeException: java.lang.RuntimeException: java.lang.RuntimeException: com.atlassian.confluence.content.render.xhtml.XhtmlException: com.atlassian.confluence.content.render.xhtml.editor.macro.InvalidMacroParameterException: Invalid parameter value for macro 'widget' parameter 'url' (type url): '{widget:url=http://app.episodic.com/shows/13/episodes/pskcvfyj8x1p' [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.transformers.ThrowExceptionOnFragmentTransformationError.handle(ThrowExceptionOnFragmentTransformationError.java:13) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.transformers.DefaultFragmentTransformer.transformFragment(DefaultFragmentTransformer.java:175) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.transformers.DefaultFragmentTransformer.transform(DefaultFragmentTransformer.java:129) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.macro.StorageMacroV1Unmarshaller.parseRichTextMacroBody(StorageMacroV1Unmarshaller.java:151) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.macro.StorageMacroV1Unmarshaller.unmarshal(StorageMacroV1Unmarshaller.java:110) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.macro.DelegatingStorageMacroUnmarshaller.unmarshal(DelegatingStorageMacroUnmarshaller.java:45) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.macro.DelegatingStorageMacroUnmarshaller.unmarshal(DelegatingStorageMacroUnmarshaller.java:18) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.UnmarshalMarshalFragmentTransformer.transform(UnmarshalMarshalFragmentTransformer.java:30) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.transformers.DefaultFragmentTransformer.transformFragment(DefaultFragmentTransformer.java:153) [INFO] [talledLocalContainer] ... 30 more [INFO] [talledLocalContainer] Caused by: java.lang.RuntimeException: java.lang.RuntimeException: com.atlassian.confluence.content.render.xhtml.XhtmlException: com.atlassian.confluence.content.render.xhtml.editor.macro.InvalidMacroParameterException: Invalid parameter value for macro 'widget' parameter 'url' (type url): '{widget:url=http://app.episodic.com/shows/13/episodes/pskcvfyj8x1p' [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.transformers.ThrowExceptionOnFragmentTransformationError.handle(ThrowExceptionOnFragmentTransformationError.java:13) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.transformers.DefaultFragmentTransformer.transformFragment(DefaultFragmentTransformer.java:175) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.transformers.DefaultFragmentTransformer.transform(DefaultFragmentTransformer.java:129) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.macro.StorageMacroV1Unmarshaller.parseRichTextMacroBody(StorageMacroV1Unmarshaller.java:151) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.macro.StorageMacroV1Unmarshaller.unmarshal(StorageMacroV1Unmarshaller.java:110) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.macro.DelegatingStorageMacroUnmarshaller.unmarshal(DelegatingStorageMacroUnmarshaller.java:45) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.macro.DelegatingStorageMacroUnmarshaller.unmarshal(DelegatingStorageMacroUnmarshaller.java:18) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.UnmarshalMarshalFragmentTransformer.transform(UnmarshalMarshalFragmentTransformer.java:30) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.transformers.DefaultFragmentTransformer.transformFragment(DefaultFragmentTransformer.java:153) [INFO] [talledLocalContainer] ... 37 more [INFO] [talledLocalContainer] Caused by: java.lang.RuntimeException: com.atlassian.confluence.content.render.xhtml.XhtmlException: com.atlassian.confluence.content.render.xhtml.editor.macro.InvalidMacroParameterException: Invalid parameter value for macro 'widget' parameter 'url' (type url): '{widget:url=http://app.episodic.com/shows/13/episodes/pskcvfyj8x1p' [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.transformers.ThrowExceptionOnFragmentTransformationError.handle(ThrowExceptionOnFragmentTransformationError.java:13) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.transformers.DefaultFragmentTransformer.transformFragment(DefaultFragmentTransformer.java:175) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.transformers.DefaultFragmentTransformer.transform(DefaultFragmentTransformer.java:129) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.macro.StorageMacroV1Unmarshaller.parseRichTextMacroBody(StorageMacroV1Unmarshaller.java:151) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.macro.StorageMacroV1Unmarshaller.unmarshal(StorageMacroV1Unmarshaller.java:110) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.macro.DelegatingStorageMacroUnmarshaller.unmarshal(DelegatingStorageMacroUnmarshaller.java:45) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.macro.DelegatingStorageMacroUnmarshaller.unmarshal(DelegatingStorageMacroUnmarshaller.java:18) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.UnmarshalMarshalFragmentTransformer.transform(UnmarshalMarshalFragmentTransformer.java:30) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.transformers.DefaultFragmentTransformer.transformFragment(DefaultFragmentTransformer.java:153) [INFO] [talledLocalContainer] ... 44 more [INFO] [talledLocalContainer] Caused by: com.atlassian.confluence.content.render.xhtml.XhtmlException: com.atlassian.confluence.content.render.xhtml.editor.macro.InvalidMacroParameterException: Invalid parameter value for macro 'widget' parameter 'url' (type url): '{widget:url=http://app.episodic.com/shows/13/episodes/pskcvfyj8x1p' [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.macro.StorageMacroV1Unmarshaller.parseV1Parameter(StorageMacroV1Unmarshaller.java:194) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.macro.StorageMacroV1Unmarshaller.unmarshal(StorageMacroV1Unmarshaller.java:82) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.macro.DelegatingStorageMacroUnmarshaller.unmarshal(DelegatingStorageMacroUnmarshaller.java:45) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.macro.DelegatingStorageMacroUnmarshaller.unmarshal(DelegatingStorageMacroUnmarshaller.java:18) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.UnmarshalMarshalFragmentTransformer.transform(UnmarshalMarshalFragmentTransformer.java:30) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.transformers.DefaultFragmentTransformer.transformFragment(DefaultFragmentTransformer.java:153) [INFO] [talledLocalContainer] ... 51 more [INFO] [talledLocalContainer] Caused by: com.atlassian.confluence.content.render.xhtml.editor.macro.InvalidMacroParameterException: Invalid parameter value for macro 'widget' parameter 'url' (type url): '{widget:url=http://app.episodic.com/shows/13/episodes/pskcvfyj8x1p' [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.editor.macro.MacroParameterTypeParserImpl.parseMacroParameter(MacroParameterTypeParserImpl.java:114) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.editor.macro.MacroParameterTypeParserImpl.parseMacroParameter(MacroParameterTypeParserImpl.java:87) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.storage.macro.StorageMacroV1Unmarshaller.parseV1Parameter(StorageMacroV1Unmarshaller.java:188) [INFO] [talledLocalContainer] ... 56 more [INFO] [talledLocalContainer] Caused by: java.net.MalformedURLException: {widget:url=http://app.episodic.com/shows/13/episodes/pskcvfyj8x1p [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.editor.macro.MacroParameterTypeParserImpl.resolveUrl(MacroParameterTypeParserImpl.java:282) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.editor.macro.MacroParameterTypeParserImpl.parseSingleMacroParameter(MacroParameterTypeParserImpl.java:209) [INFO] [talledLocalContainer] at com.atlassian.confluence.content.render.xhtml.editor.macro.MacroParameterTypeParserImpl.parseMacroParameter(MacroParameterTypeParserImpl.java:109) [INFO] [talledLocalContainer] ... 58 more
I was investigating/debugging Confluence source code and I had macroName = "widget" parameterName = "url" and parameterValue = "{widget:url=http://app.episodic.com/shows/13/episodes/pskcvfyj8x1p". Parameter value looked strange for me - it turned out that there is invalid record in local HSQL database. When I changed this record (into http://app.episodic.com/shows/13/episodes/pskcvfyj8x1p) and ran tests again there were no exceptions.