CA CLI: cert-request-submit throws UnmarshalException when cert_request_type is different that the "cert_request" format.
Steps to Reproduce:
Use the attached xml file and use cli: pki -d . -c Secret123 -n "PKI CA Administrator for Example.Org" -h `hostname` -p 8080 cert-request-submit test.xml
Actual results:
javax.xml.bind.UnmarshalException - with linked exception: [org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Content is not allowed in prolog.] at javax.xml.bind.helpers.AbstractUnmarshallerImpl.createUnmarshalExcep tion(AbstractUnmarshallerImpl.java:335) at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.c reateUnmarshalException(UnmarshallerImpl.java:563) at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.u nmarshal0(UnmarshallerImpl.java:249) at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.u nmarshal(UnmarshallerImpl.java:214) at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUn marshallerImpl.java:157) at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUn marshallerImpl.java:214) at com.netscape.certsrv.cert.CertEnrollmentRequest.fromXML(CertEnrollme ntRequest.java:271) at com.netscape.cmstools.cert.CertRequestSubmitCLI.execute(CertRequestS ubmitCLI.java:160) at com.netscape.cmstools.cli.CLI.execute(CLI.java:337) at com.netscape.cmstools.cert.CertCLI.execute(CertCLI.java:91) at com.netscape.cmstools.cli.ProxyCLI.execute(ProxyCLI.java:119) at com.netscape.cmstools.cli.CLI.execute(CLI.java:337) at com.netscape.cmstools.cli.MainCLI.execute(MainCLI.java:562) at com.netscape.cmstools.cli.MainCLI.main(MainCLI.java:574) Caused by: org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Content is not allowed in prolog. at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSA XParseException(ErrorHandlerWrapper.java:203) at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalErr or(ErrorHandlerWrapper.java:177) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError (XMLErrorReporter.java:400) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError (XMLErrorReporter.java:327) at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError( XMLScanner.java:1472) at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$Prolo gDriver.next(XMLDocumentScannerImpl.java:994) at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next( XMLDocumentScannerImpl.java:602) at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.nex t(XMLNSDocumentScannerImpl.java:112) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerIm pl.scanDocument(XMLDocumentFragmentScannerImpl.java:505) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse( XML11Configuration.java:841) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse( XML11Configuration.java:770) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(A bstractSAXParser.java:1213) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser. parse(SAXParserImpl.java:643) at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.u nmarshal0(UnmarshallerImpl.java:243) ... 11 more
Expected results:
User friendly message .It's hard to understand what is the root cause.
Additional info:
Test.xml file used:: [root@nocp1 abc]# cat test.xml <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <CertEnrollmentRequest> <Attributes/> <ProfileID>caUserCert</ProfileID> <Renewal>false</Renewal> <RemoteHost></RemoteHost> <RemoteAddress></RemoteAddress> <Input id="i1"> <ClassID>keyGenInputImpl</ClassID> <Name>Key Generation</Name> <Attribute name="cert_request_type"> <Value>pkcs10</Value> <Descriptor> <Syntax>keygen_request_type</Syntax> <Description>Key Generation Request Type</Description> </Descriptor> </Attribute> <Attribute name="cert_request"> <Value> MIICQDCCASgwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCxLk1TLZbo DblZWMZZHnCDQg/AWgBcvKQnWEIV/WHH0R0AxbgPdCTL7Xvug/P8XessAbokboh9 Rgo4wDpIRIYEwunpGLqjx3Tor6IvricOQEkAsWJMtet/F8lW3vstfCiMBtiaGkvS uRp6Ev+9RPV0yb7GAh1ncbpBrg625V6f5nHkYYZwUnlxRClpcveojwOfLQy6Bouz 7IkVJSmIk3OUZZeemAM5b8wPNr+/t8lxNkeb12+6+lxKi9S6u6d1x2ZsJNedJjEn ouhRurdagXQbM1Iq7CW6j6cwdJgY7yY4f0BzcPGGd2h+w6KZrkx16EnluZg+0l03 y1mIKeEhFwbpAgMBAAEWADANBgkqhkiG9w0BAQQFAAOCAQEAL2IIEH8KsWfPqcW+ bsylOV6kfGkf0J613M4TJ+u+K76L+yRLFlkJJ8YLbG5LIRjzp8xBW/2DctaOoho+ JCK/EaxJhI8z0DZGoXGzKadrRUySa0Vb0YSw0c+S0wAxc3wKi9089dk1PgcjdHYd usA0i6o4R/85F/Vt4tJ/4YxiE8mwmfmEpc8d0nTl6pGh3HPYKCjumBV1NxuV7zEZ EkRGHdH3q6fsCTOWZlVMGgZ4wujGthvcVltD+EieF3IB8o3e0yOyhJXClk7vmaCQ T6nH7VC3nq8ijD3GgEhoB9+Ch7BWiO20FWDJPp7MgyrLXSn2+Ngi7huhEC4NbtbM NIaTUg== </Value> <Descriptor> <Syntax>keygen_request</Syntax> <Description>Key Generation Request</Description> </Descriptor> </Attribute> </Input> <Input id="i2"> <ClassID>subjectNameInputImpl</ClassID> <Name>Subject Name</Name> <Attribute name="sn_uid"> <Value>test</Value> <Descriptor> <Syntax>string</Syntax> <Description>UID</Description> </Descriptor> </Attribute> <Attribute name="sn_e"> <Value>test@a.com</Value> <Descriptor> <Syntax>string</Syntax> <Description>Email</Description> </Descriptor> </Attribute> <Attribute name="sn_cn"> <Value>test</Value> <Descriptor> <Syntax>string</Syntax> <Description>Common Name</Description> </Descriptor> </Attribute> <Attribute name="sn_ou3"> <Value></Value> <Descriptor> <Syntax>string</Syntax> <Description>Organizational Unit 3</Description> </Descriptor> </Attribute> <Attribute name="sn_ou2"> <Value></Value> <Descriptor> <Syntax>string</Syntax> <Description>Organizational Unit 2</Description> </Descriptor> </Attribute> <Attribute name="sn_ou1"> <Value></Value> <Descriptor> <Syntax>string</Syntax> <Description>Organizational Unit 1</Description> </Descriptor> </Attribute> <Attribute name="sn_ou"> <Value></Value> <Descriptor> <Syntax>string</Syntax> <Description>Organizational Unit</Description> </Descriptor> </Attribute> <Attribute name="sn_o"> <Value></Value> <Descriptor> <Syntax>string</Syntax> <Description>Organization</Description> </Descriptor> </Attribute> <Attribute name="sn_c"> <Value></Value> <Descriptor> <Syntax>string</Syntax> <Description>Country</Description> </Descriptor> </Attribute> </Input> <Input id="i3"> <ClassID>submitterInfoInputImpl</ClassID> <Name>Requestor Information</Name> <Attribute name="requestor_name"> <Value></Value> <Descriptor> <Syntax>string</Syntax> <Description>Requestor Name</Description> </Descriptor> </Attribute> <Attribute name="requestor_email"> <Value></Value> <Descriptor> <Syntax>string</Syntax> <Description>Requestor Email</Description> </Descriptor> </Attribute> <Attribute name="requestor_phone"> <Value></Value> <Descriptor> <Syntax>string</Syntax> <Description>Requestor Phone</Description> </Descriptor> </Attribute> </Input> </CertEnrollmentRequest>
Per PKI Bug Council of 11/17/2016: 10.4 - minor
Metadata Update from @gkapoor: - Issue set to the milestone: UNTRIAGED
Metadata Update from @mharmsen: - Custom field feature adjusted to None - Custom field proposedmilestone adjusted to None - Custom field proposedpriority adjusted to None - Custom field reviewer adjusted to None - Custom field version adjusted to None - Issue close_status updated to: None - Issue set to the milestone: FUTURE (was: UNTRIAGED)
Per 10.5.x/10.6 Triage: FUTURE
alee: error case, usability issue
Dogtag PKI is moving from Pagure issues to GitHub issues. This means that existing or new issues will be reported and tracked through Dogtag PKI's GitHub Issue tracker.
This issue has been cloned to GitHub and is available here: https://github.com/dogtagpki/pki/issues/2669
If you want to receive further updates on the issue, please navigate to the GitHub issue and click on Subscribe button.
Subscribe
Thank you for understanding, and we apologize for any inconvenience.
Metadata Update from @dmoluguw: - Issue close_status updated to: migrated - Issue status updated to: Closed (was: Open)