When trying to replace an entire page the plugin generates the following error.
The page was created using a custom groovy script (would be a nice feature). The attachments however are succefully uploaded.
finished updating page.
~
Archiving artifacts
[confluence] Uploading attachments to Confluence page: http://hostname/wiki/display/QID/Core_0.20.3
[confluence] Found 11 archived artifact(s) to upload to Confluence...
[confluence] Uploading 11 file(s) to Confluence...
[confluence] - Uploading file: DefaultNotification.java-19139-HEAD.diff (application/octet-stream)
[confluence] done: http://hostname/wiki/download/attachments/32047558/DefaultNotification.java-19139-HEAD.diff?version=1
[confluence] - Uploading file: ContentType.java-19139-HEAD.diff (application/octet-stream)
[confluence] done: http://hostname/wiki/download/attachments/32047558/ContentType.java-19139-HEAD.diff?version=1
[confluence] - Uploading file: releasenotes-0.20.3.txt (text/plain)
[confluence] done: http://hostname/wiki/download/attachments/32047558/releasenotes-0.20.3.txt?version=1
[confluence] - Uploading file: AttachmentDTO.java-19139-HEAD.diff (application/octet-stream)
[confluence] done: http://hostname/wiki/download/attachments/32047558/AttachmentDTO.java-19139-HEAD.diff?version=1
[confluence] - Uploading file: diff-deploy-19139-HEAD.diff (application/octet-stream)
[confluence] done: http://hostname/wiki/download/attachments/32047558/diff-deploy-19139-HEAD.diff?version=1
[confluence] - Uploading file: diff-properties-19139-HEAD.diff (application/octet-stream)
[confluence] done: http://hostname/wiki/download/attachments/32047558/diff-properties-19139-HEAD.diff?version=1
[confluence] - Uploading file: SoapUI-0.20.3.zip (application/zip)
[confluence] done: http://hostname/wiki/download/attachments/32047558/SoapUI-0.20.3.zip?version=1
[confluence] - Uploading file: sonar-0.20.3.zip (application/zip)
[confluence] done: http://hostname/wiki/download/attachments/32047558/sonar-0.20.3.zip?version=1
[confluence] - Uploading file: MessageDTO.java-19139-HEAD.diff (application/octet-stream)
[confluence] done: http://hostname/wiki/download/attachments/32047558/MessageDTO.java-19139-HEAD.diff?version=1
[confluence] - Uploading file: diff-db-19139-HEAD.diff (application/octet-stream)
[confluence] done: http://hostname/wiki/download/attachments/32047558/diff-db-19139-HEAD.diff?version=1
[confluence] - Uploading file: qiyplatform-defaults.properties (application/octet-stream)
[confluence] done: http://hostname/wiki/download/attachments/32047558/qiyplatform-defaults.properties?version=1
[confluence] Done
[confluence] Performing wiki edits: Replace entire page content
AxisFault
faultCode:
Server.userException
faultSubcode:
faultString: org.xml.sax.SAXException: Deserializing parameter 'in2': could not find deserializer for type
RemotePageUpdateOptions
faultActor:
faultNode:
faultDetail:
{}faultData:<exception xmlns:ns2="http://lang.java" xsi:nil="true" xsi:type="ns2:Exception"/><message xsi:type="xsd:string">Deserializing parameter 'in2': could not find deserializer for type
RemotePageUpdateOptions</message>
hostname:hostname
org.xml.sax.SAXException: Deserializing parameter 'in2': could not find deserializer for type
{http://beans.soap.rpc.confluence.atlassian.com}RemotePageUpdateOptions
at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl.parse(Unknown Source)
at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
at org.apache.axis.client.Call.invoke(Call.java:2767)
at org.apache.axis.client.Call.invoke(Call.java:2443)
at org.apache.axis.client.Call.invoke(Call.java:2366)
at org.apache.axis.client.Call.invoke(Call.java:1812)
at jenkins.plugins.confluence.soap.v1.ConfluenceserviceV1SoapBindingStub.updatePage(ConfluenceserviceV1SoapBindingStub.java:7578)
at com.myyearbook.hudson.plugins.confluence.ConfluenceSession.updatePage(ConfluenceSession.java:141)
at com.myyearbook.hudson.plugins.confluence.ConfluencePublisher.performWikiReplacements(ConfluencePublisher.java:395)
at com.myyearbook.hudson.plugins.confluence.ConfluencePublisher.perform(ConfluencePublisher.java:323)
at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:36)
at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:693)
at hudson.model.AbstractBuild$AbstractRunner.performAllBuildSteps(AbstractBuild.java:668)
at hudson.model.AbstractBuild$AbstractRunner.performAllBuildSteps(AbstractBuild.java:646)
at hudson.model.Build$RunnerImpl.post2(Build.java:162)
at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:615)
at hudson.model.Run.run(Run.java:1401)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:230)
Looks like this is because Confluence 2.5 does not support the updatePage() method, according to https://confluence.atlassian.com/display/CONF25/Remote+API+Specification#RemoteAPISpecification-methodsRemoteMethods and instead uses storePage() to update a page. That means that 2.5 also does not support the ability to add a comment for the page edit (e.g., to explain what you're changing/why, etc). That is the primary purpose of the RemotePageUpdateOptions encapsulation class.
I'll consider adding a fallback for Confluence 2.5 support, but have you considered upgrading Confluence? The current version is 4.3, with 5.0 already available for developer early access. IMO, this is poor SOAP implementation, because both 2.5 and 3.x have a "v1" WSDL file that is supposed to describe the SOAP API, yet Confluence 2.5 does not support the actual v1 APIs mentioned above.