You need to sign in to do that
Don't have an account?
thangasan@yahoo
Creating Custom Object programmatic using Metadata API
Hi
For Creating Custom Object programmatic using Metadata API I am receive the following Error Can any one help
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Client
faultSubcode:
faultString: Must specify a {http://www.w3.org/2001/XMLSchema-instance}type attribute value for the {http://soap.sforce.com/2006/04/metadata}metadata element
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:Must specify a {http://www.w3.org/2001/XMLSchema-instance}type attribute value for the {http://soap.sforce.com/2006/04/metadata}metadata element
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Client
faultSubcode:
faultString: Must specify a {http://www.w3.org/2001/XMLSchema-instance}type attribute value for the {http://soap.sforce.com/2006/04/metadata}metadata element
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:Must specify a {http://www.w3.org/2001/XMLSchema-instance}type attribute value for the {http://soap.sforce.com/2006/04/metadata}metadata element
here is the code
Code:
Note SessionHeader Class also Import from partner WSDL .
MetadataBindingStub stub = (MetadataBindingStub) new MetadataServiceLocator().getMetadata(); stub.setTimeout(60000); // Login using Partner WSDL // Getting the Session ID from Partner WSDL SessionHeader sh = new SessionHeader(); sh.setSessionId(loginResult.getSessionId()); stub.setHeader(new MetadataServiceLocator().getServiceName() .getNamespaceURI(), "SessionHeader", sh); CustomObject co = new CustomObject(); String name = "MyNewObj"; co.setFullName(name + "__c"); co.setDeploymentStatus(DeploymentStatus.Deployed); co.setDescription("Created by the Metadata API"); co.setEnableActivities(true); co.setLabel(name + " Object"); co.setPluralLabel(co.getLabel() + "s"); co.setSharingModel(SharingModel.ReadWrite); CustomField nf = new CustomField(); nf.setType(FieldType.Text); nf.setLabel(co.getFullName() + " Name"); co.setNameField(nf); AsyncResult[] ars = stub.create(new Metadata[] { co} );
Note SessionHeader Class also Import from partner WSDL .
Metadata.wsdl not generating SessionHeader.java.
Thanks
Thanga
Sir
I tried what you said but i got the below Error , Sorry for late replay
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: java.io.IOException: java.io.IOException: java.io.IOException: Non nillable element 'fullName' is null.
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:java.io.IOException: java.io.IOException: java.io.IOException: Non nillable element 'fullName' is null.
I am setting fullname , And i am using Axis 10.0 ,
My URL is https://na4-api.salesforce.com/services/Soap/u/10.0
Could you plelase reply how can i retrieve all report names of salesforce meta data api from apex class (or) any other javascript function?