Discussions
Categories
Groups
Community Home
Categories
INTERNAL ENABLEMENT
POPULAR
THRUST SERVICES & TOOLS
CLOUD EDITIONS
Quick Links
MY LINKS
HELPFUL TIPS
Back to website
Home
Intelligence (Analytics)
SOAP Error: 3431 - Volume name is not specified.
senyahnoj
I'm trying to send a login request to actuate 11 iServer via the SOAP interface. I'm sending:<br />
<br />
<pre class='_prettyXprint _lang-auto _linenums:0'><?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://schemas.actuate.com/actuate11">
<SOAP-ENV:Header>
<ns1:Locale SOAP-ENV:actor="http://schemas.xmlsoap.org/soap/actor/next">en_GB</ns1:Locale>
<ns1:TargetVolume SOAP-ENV:actor="http://schemas.xmlsoap.org/soap/actor/next">midas</ns1:TargetVolume>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<ns1:Login>
<ns1:User>administrator</ns1:User>
<ns1:Password/>
<ns1:UserSetting>true</ns1:UserSetting>
</ns1:Login>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope></pre>
<br />
... and receiving:<br />
<br />
<pre class='_prettyXprint _lang-auto _linenums:0'><?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<soapenv:Fault>
<faultcode>soapenv:Server</faultcode>
<faultstring>Soap Server error.</faultstring>
<detail>
<RequestName>Login</RequestName>
<ErrorCode>3431</ErrorCode>
<Description>
<Message>Volume name is not specified.</Message>
</Description>
</detail>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope></pre>
<br />
Please can anyone tell me where I'm going wrong?
Find more posts tagged with
Comments
JasonW
Try adding a domain to the login:
<ns1:Login>
<ns1:User>administrator</ns1:User>
<ns1:Password/>
<ns1:Domain>midas</ns1:Domain>
<ns1:UserSetting>true</ns1:UserSetting>
</ns1:Login>
Jason
senyahnoj
<blockquote class='ipsBlockquote' data-author="'JasonW'" data-cid="73875" data-time="1298565076" data-date="24 February 2011 - 09:31 AM"><p>
Try adding a domain to the login:<br />
<br />
<ns1:Login> <br />
<ns1:User>administrator</ns1:User> <br />
<ns1:Password/> <br />
<ns1:Domain>midas</ns1:Domain><br />
<ns1:UserSetting>true</ns1:UserSetting> <br />
</ns1:Login><br />
<br />
Jason<br /></p></blockquote>
<br />
Thanks - just tried that but still gives the same error
<br />
<br />
<pre class='_prettyXprint _lang-auto _linenums:0'>
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://schemas.actuate.com/actuate11">
<SOAP-ENV:Header>
<ns1:Locale SOAP-ENV:actor="http://schemas.xmlsoap.org/soap/actor/next">en_GB</ns1:Locale>
<ns1:TargetVolume SOAP-ENV:actor="http://schemas.xmlsoap.org/soap/actor/next">midas</ns1:TargetVolume>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<ns1:Login>
<ns1:User>administrator</ns1:User>
<ns1:Password/>
<ns1:Domain>midas</ns1:Domain>
<ns1:UserSetting>true</ns1:UserSetting>
</ns1:Login>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<soapenv:Fault>
<faultcode>soapenv:Server</faultcode>
<faultstring>Soap Server error.</faultstring>
<detail>
<RequestName>Login</RequestName>
<ErrorCode>3431</ErrorCode>
<Description>
<Message>Volume name is not specified.</Message>
</Description>
</detail>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope></pre>
<br />
Any other thoughts?
JasonW
I just tried the following on A11 and it worked:
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/"
; xmlns:xsd="
http://www.w3.org/2001/XMLSchema"
; xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"><soapenv:Header><Locale
soapenv:actor="
http://schemas.xmlsoap.org/soap/actor/next"
; soapenv:mustUnderstand="0">en_US</Locale><TargetVolume soapenv:actor="
http://schemas.xmlsoap.org/soap/actor/next"
; soapenv:mustUnderstand="0">jw05534</TargetVolume><DelayFlush soapenv:actor="
http://schemas.xmlsoap.org/soap/actor/next"
; soapenv:mustUnderstand="0"/></soapenv:Header><soapenv:Body>
<Login xmlns="
http://schemas.actuate.com/actuate11">
;
<User>administrator</User>
<Password></Password>
<EncryptedPwd></EncryptedPwd>
<Domain>jw05534</Domain>
<UserSetting>false</UserSetting>
</Login>
</soapenv:Body>
</soapenv:Envelope>
Jason
senyahnoj
Logs are saying<br />
<br />
<pre class='_prettyXprint _lang-auto _linenums:0'>[Thread-24] 28-Feb-2011 09:51:25 com.actuate.iserver.services.EncycServiceBase execute
WARNING: com.actuate.iserver.exceptions.AdminException: Volume name is not specified.
at com.actuate.iserver.services.soap.ServiceBase.readSOAPHeader(Unknown Source)
at com.actuate.iserver.services.soap.ServiceBase.preExecute(Unknown Source)</pre>
<br />
Anyone know what's going on? Is there any specific documentation on this error code someone could point me towards?<br />
<br />
Thanks
JasonW
Did you try the xml I posted, changing the volume to yours and setting the user and password?
Jason
senyahnoj
Aha - yes! I put together a cURL client to send your XML with my modified credentials and it worked.<br />
<br />
The problem is in the SOAP header. You need to make the child elements not have namespaces - i.e.<br />
<br />
<pre class='_prettyXprint _lang-auto _linenums:0'><SOAP-ENV:Header>
<Locale SOAP-ENV:actor="http://schemas.xmlsoap.org/soap/actor/next">en_GB</Locale>
<TargetVolume SOAP-ENV:actor="http://schemas.xmlsoap.org/soap/actor/next">midas</TargetVolume>
</SOAP-ENV:Header></pre>
<br />
The problem I now have is that my SOAP client regards this as improperly formed XML (it would want a proper namespace for Locale and TargetVolume as in my original example)
<br />
<br />
Found <a class='bbc_url' href='
http://www.birt-exchange.org/org/forum/index.php/topic/20973-soap-error-volume-name-is-not-specified/page__view__findpost__p__70824'>another
post</a> which has a similar problem in the IDAPI not being fully SOAP compliant in the way it forms its headers.<br />
<br />
Thanks for your help Jason