I'm having trouble using the reviseAssetMetadata() method within the Java API's. Under a certain folder, I'm trying to update certain fields but I'm having some trouble. Since I've had no luck updating individual fields, for the sake of testing, I am trying to pass the original (unchanged) ArrayOFMetadata object with the Asset ID, to the reviseAsset method. Even passing the unchanged ArrayOFMetadata object, I continue to get an AxisFault error.
Here is the error I am getting when I call the reviseAssetMetadata() method:
AxisFault
faultCode: {
http://schemas.xmlsoap.org/soap/envelope/}Server faultSubcode:
faultString: Server was unable to process request. --> MBException: The type must match the original. (0x80040449)
faultActor:
faultNode:
faultDetail:
{
http://xml.apache.org/axis/}stackTrace: AxisFault
faultCode: {
http://schemas.xmlsoap.org/soap/envelope/}Server faultSubcode:
faultString: Server was unable to process request. --> MBException: The type must match the original. (0x80040449)
faultActor:
faultNode:
faultDetail:
Server was unable to process request. --> MBException: The type must match the original. (0x80040449)
at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:260)
at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:169)
at org.apache.axis.encoding.DeserializationContextImpl.endElement(DeserializationContextImpl.java(Compiled Code))
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 javax.xml.parsers.SAXParser.parse(Unknown Source)
at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:242)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:538)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:376)
at org.apache.axis.client.Call.invokeEngine(Call.java:2583)
at org.apache.axis.client.Call.invoke(Call.java:2553)
at org.apache.axis.client.Call.invoke(Call.java:2248)
at org.apache.axis.client.Call.invoke(Call.java:2171)
at org.apache.axis.client.Call.invoke(Call.java:1691)
at com.mediabin.
www.MediaBinServerSoapStub.reviseAssetMetadata(MediaBinServerSoapStub.java:6398) at com.ejgallo.sharedservices.posimageprocess.impl.MBWebServiceImpl.WalkContainerTree(MBWebServiceImpl.java:174)
at com.ejgallo.sharedservices.posimageprocess.impl.MBWebServiceImpl.WalkContainerTree(MBWebServiceImpl.java:131)
at com.ejgallo.sharedservices.posimageprocess.impl.MBWebServiceImpl.GetFirstContainerLevel(MBWebServiceImpl.java:215)
at com.ejgallo.sharedservices.posimageprocess.RenamePOSImage.doWork(RenamePOSImage.java:97)
at com.ejgallo.sharedservices.posimageprocess.RenamePOSImage.main(RenamePOSImage.java:121)
Server was unable to process request. --> MBException: The type must match the original. (0x80040449)
at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:260)
at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:169)
at org.apache.axis.encoding.DeserializationContextImpl.endElement(DeserializationContextImpl.java(Compiled Code))
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 javax.xml.parsers.SAXParser.parse(Unknown Source)
at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:242)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:538)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:376)
at org.apache.axis.client.Call.invokeEngine(Call.java:2583)
at org.apache.axis.client.Call.invoke(Call.java:2553)
at org.apache.axis.client.Call.invoke(Call.java:2248)
at org.apache.axis.client.Call.invoke(Call.java:2171)
at org.apache.axis.client.Call.invoke(Call.java:1691)
at com.mediabin.
www.MediaBinServerSoapStub.reviseAssetMetadata(MediaBinServerSoapStub.java:6398) at com.ejgallo.sharedservices.posimageprocess.impl.MBWebServiceImpl.WalkContainerTree(MBWebServiceImpl.java:174)
at com.ejgallo.sharedservices.posimageprocess.impl.MBWebServiceImpl.WalkContainerTree(MBWebServiceImpl.java:131)
at com.ejgallo.sharedservices.posimageprocess.impl.MBWebServiceImpl.GetFirstContainerLevel(MBWebServiceImpl.java:215)
at com.ejgallo.sharedservices.posimageprocess.RenamePOSImage.doWork(RenamePOSImage.java:97)
at com.ejgallo.sharedservices.posimageprocess.RenamePOSImage.main(RenamePOSImage.java:121)
Here's the snippet of code where the error is happening:
// snippet start
if(cont.getMName().equals("POS"))
{
logger.info("name: " + cont.getMName());
logger.info("cid: " + cont.getMID());
// get Assets for this Container (folder)
ArrayOfMBAsset arrayAsset = mMediaBinServer.getAssetList(cont.getMID());
if(arrayAsset.getMBAsset() != null)
{
// this is the true Array
MBAsset[] asset = arrayAsset.getMBAsset();
for (int j = 0; j < asset.length; j++)
{
MBAsset mbAsset = mMediaBinServer.getAsset(asset.getMID());
ArrayOfMBMetadata arrMetadata = mbAsset.getMetadata();
logger.info("ArrayOFMetadata: " + arrMetadata);
if( arrMetadata != null)
{
logger.info("I've got the ArrayOFMBMetadata!");
//This is the true array
MBMetadata[] metadata = arrMetadata.getMBMetadata();
logger.info("length: " + metadata.length);
}
mMediaBinServer.reviseAssetMetadata(mbAsset.getMID(),arrMetadata);
}
}
}
// end snippet
The version of MediaBin is: 4.5. Any suggestions or examples would be appreciated.
Thanks,
Jay