• Duodou
  • NEWBIE
  • 25 Points
  • Member since 2010

  • Chatter
    Feed
  • 1
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 5
    Questions
  • 7
    Replies

Could someone please help?

In my custom app, I added a custom button, and then added it to the default layout of Contact.

After I packaged and installed the app into a new organization. I can see the button installed and deployed  from set up, but, when I open Contact layout, I don't see the custom button.

 

DO I have to add it into the Contact layout mannually after the package deployed? If so, If I install this app to 10 apps, I have to add the button 10 time?? Thanks in advance.

 

 

Hi Simon,

 

I am wondering if you could me help out this one:

How to get report column's  api name? From sample xml that the help doc provides(http://www.salesforce.com/us/developer/docs/api_meta), I can see the columns node contains actual field api name:

 <columns>
<field>CRT_Object__c$Name</field>
</columns>

 

But from the zip file I retrieved following your ,net sample code http://www.pocketsoap.com/weblog/category/_net.htm l,, I don't see api name for the column. Here is sample of report meta data I got:

<?xml version="1.0" encoding="UTF-8"?>
<Report xmlns="http://soap.sforce.com/2006/04/metadata">
    <columns>
        <field>SALUTATION</field>
    </columns>
    <columns>
        <field>FIRST_NAME</field>
    </columns>
    <columns>
        <field>LAST_NAME</field>
    </columns>
    <columns>
        <field>TITLE</field>
    </columns>
    <columns>
        <field>ADDRESS2_STREET</field>
    </columns>
    <columns>
        <field>ADDRESS2_CITY</field>
    </columns>
    <columns>
        <field>ADDRESS2_STATE</field>
    </columns>
    <columns>
        <field>ADDRESS2_ZIP</field>
    </columns>
    <columns>
        <field>ADDRESS2_COUNTRY</field>
    </columns>
    <columns>
        <field>PHONE1</field>
    </columns>
    <columns>
        <field>PHONE3</field>
    </columns>
    <columns>
        <field>PHONE2</field>
    </columns>
    <columns>
        <field>EMAIL</field>
    </columns>
    <columns>
        <field>OWNER_FULL_NAME</field>
    </columns>
    <columns>
        <field>ACCOUNT.NAME</field>
    </columns>
    <description>This is just a test!</description>
    <format>Summary</format>
    <groupingsDown>
        <dateGranularity>Day</dateGranularity>
        <field>CONTACT_ID</field>
        <sortOrder>Asc</sortOrder>
    </groupingsDown>
    <name>Test 2009</name>
    <reportType>ContactList</reportType>
    <scope>my</scope>
    <showDetails>true</showDetails>
    <timeFrameFilter>
        <dateColumn>CREATED_DATE</dateColumn>
        <interval>INTERVAL_CUSTOM</interval>
        <startDate>2009-05-10</startDate>
    </timeFrameFilter>
</Report>

 

Could you please point me out how to get column's API name? Thanks a lot!

 

 

Hello,


I converted Simon's sample code from http://www.pocketsoap.com/weblog/category/_net.htm l to java to retrieve report metadata.



Got an errors saying "Non nillable element 'version' is null" but I did set the version already..(My project is stuck because of this..:-( please, can anybody help me out..Thanks!)..


here is my code:

@SuppressWarnings("static-access")
    public void retrieveReports(String[] reportFiles) {
        // build up an unpackaged retrieve request for the list of reports.
        RetrieveRequest r = new RetrieveRequest();
        r.setApiVersion(API_VERSION);
        r.setUnpackaged(new _package());
        PackageTypeMembers m = new PackageTypeMembers();
        m.setName("Report");
        m.setMembers(reportFiles);
        r.getUnpackaged().setTypes(new PackageTypeMembers[] { m });
        
        // start the retrieve request
        AsyncResult ar;
        try {
            ar = this.metadatabinding.retrieve(r);
//error out:  "Non nillable element 'version' is null" :-(
            // wait for it to complete, sleeping as necassary...

... ...


Below are detailed error messages...



ERROR | 17:00:08.321 | Exception: | BeanSerializer.java
java.io.IOException: java.io.IOException: Non nillable element 'version' is null.
    at org.apache.axis.encoding.ser.BeanSerializer.serialize(BeanSerializer.java:275)
    at org.apache.axis.encoding.SerializationContext.serializeActual(SerializationContext.java:1502)
    at org.apache.axis.encoding.SerializationContext.serialize(SerializationContext.java:978)
    at org.apache.axis.encoding.SerializationContext.serialize(SerializationContext.java:732)
    at org.apache.axis.encoding.ser.BeanSerializer.serialize(BeanSerializer.java:230)
    at org.apache.axis.encoding.SerializationContext.serializeActual(SerializationContext.java:1502)
    at org.apache.axis.encoding.SerializationContext.serialize(SerializationContext.java:978)
    at org.apache.axis.encoding.SerializationContext.serialize(SerializationContext.java:799)
    at org.apache.axis.message.RPCParam.serialize(RPCParam.java:208)
    at org.apache.axis.message.RPCElement.outputImpl(RPCElement.java:433)
    at org.apache.axis.message.MessageElement.output(MessageElement.java:1208)
    at org.apache.axis.message.SOAPBody.outputImpl(SOAPBody.java:139)
    at org.apache.axis.message.SOAPEnvelope.outputImpl(SOAPEnvelope.java:478)
    at org.apache.axis.message.MessageElement.output(MessageElement.java:1208)
    at org.apache.axis.SOAPPart.writeTo(SOAPPart.java:315)
    at org.apache.axis.SOAPPart.writeTo(SOAPPart.java:269)
    at org.apache.axis.SOAPPart.saveChanges(SOAPPart.java:530)
    at org.apache.axis.SOAPPart.getContentLength(SOAPPart.java:229)
    at org.apache.axis.Message.getContentLength(Message.java:510)
    at org.apache.axis.transport.http.HTTPSender.writeToSocket(HTTPSender.java:371)
    at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:138)
    at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
    at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
    at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
    at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
    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 com.sforce.soap._2006._04.metadata.MetadataBindingStub.retrieve(MetadataBindingStub.java:2121)
    at centtric.cloudfill.adapter.SalesforceMetaDataAdapter.retrieveReports(SalesforceMetaDataAdapter.java:111)
    at centtric.cloudfill.adapter.SalesforceMetaDataAdapterTest.testGetReportList(SalesforceMetaDataAdapterTest.java:15)


The Spring 10 is support rich text...great! but can anyone give me some hints on how to access the field?

 

The application I am working on needs to read out the content and convert it to a PDF..

 

Is the content of the rich text field stored as HTML format? How about the inserted image? How to access them? I can't find any documents so far:-(

 

 

 

  • February 08, 2010
  • Like
  • 0

Can anyone please help me with below web service call out problem?

 

The callout request is blow:

<?xml version="1.0" encoding="UTF-8"?>

 <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<env:Header />

<env:Body><m:FopEngine xmlns:m="http://www.centtric.com/schema/FopEngine"><fileName>test</fileName>

</m:FopEngine>

</env:Body>

</env:Envelope>

 

The endpoint is on my local computer...

 

 

I tested the same requestin soapUI, it responses correctly, but doesn't work in force.com. Here is the returned error log:

 

20100125203747.498:Class.centtric.CF_ContractFopengine.FopEnginePort.FopEngine: line 18, column 13:     Created Web Service callout to endpoint: http://localhost:8080/fopengine/services/fopengine


20100125203747.498:Class.centtric.CF_ContractFopengine.FopEnginePort.FopEngine: line 18, column 13:     Sending callout request


20100125203747.498:Class.centtric.CF_ContractFopengine.FopEnginePort.FopEngine: line 18, column 13:     <?xml version="1.0" encoding="UTF-8"?><env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><env:Header /><env:Body><m:FopEngine xmlns:m="http://www.centtric.com/schema/FopEngine"><fileName>test</fileName></m:FopEngine></env:Body></env:Envelope>


20100125203747.498:Class.centtric.CF_ContractFopengine.FopEnginePort.FopEngine: line 18, column 13:     Reading callout response


20100125203747.498:Class.centtric.CF_ContractFopengine.FopEnginePort.FopEngine: line 18, column 13:     <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>ERROR: The requested URL could not be retrieved</TITLE>

 

 

I really really don't understand why same request is ok in soapUI, but not force.com....my external web service is quite simple, didn't use any complex soap type..here is the wsdl:

 

<!--
 Published by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is JAX-WS RI 2.2-hudson-752-.
-->

<wsdl:definitions name="FopEngine" targetNamespace="http://www.centtric.com/contract/FopEngine">

<wsdl:types>

<xsd:schema targetNamespace="http://www.centtric.com/schema/FopEngine">

<xsd:element name="FopEngine">

<xsd:complexType>

<xsd:sequence>
<xsd:element name="fileName" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>

<xsd:element name="FopEngineResponse">

<xsd:complexType>

<xsd:sequence>
<xsd:element name="returnedUrl" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
</wsdl:types>

<wsdl:message name="FopEngineRequest">
<wsdl:part element="fe:FopEngine" name="parameters"/>
</wsdl:message>

<wsdl:message name="FopEngineResponse">
<wsdl:part element="fe:FopEngineResponse" name="parameters"/>
</wsdl:message>

<wsdl:portType name="FopEnginePortType">

<wsdl:operation name="FopEngine">
<wsdl:input message="tns:FopEngineRequest"/>
<wsdl:output message="tns:FopEngineResponse"/>
</wsdl:operation>
</wsdl:portType>

<wsdl:binding name="FopEngineBinding" type="tns:FopEnginePortType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>

<wsdl:operation name="FopEngine">
<soap:operation soapAction=""/>

<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>

<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>

<wsdl:service name="FopEngineService">

<wsdl:port name="FopEnginePort" binding="tns:FopEngineBinding">
<soap:address location="http://localhost:8080/fopengine/services/fopengine"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>

 

 

 

Any tips, advise are appreciated.

 

 

 

 

 

  • January 25, 2010
  • Like
  • 0

Hi people,

i would like to deploy objects from enterprise edition to group edition.Can this be done?

Hello,


I converted Simon's sample code from http://www.pocketsoap.com/weblog/category/_net.htm l to java to retrieve report metadata.



Got an errors saying "Non nillable element 'version' is null" but I did set the version already..(My project is stuck because of this..:-( please, can anybody help me out..Thanks!)..


here is my code:

@SuppressWarnings("static-access")
    public void retrieveReports(String[] reportFiles) {
        // build up an unpackaged retrieve request for the list of reports.
        RetrieveRequest r = new RetrieveRequest();
        r.setApiVersion(API_VERSION);
        r.setUnpackaged(new _package());
        PackageTypeMembers m = new PackageTypeMembers();
        m.setName("Report");
        m.setMembers(reportFiles);
        r.getUnpackaged().setTypes(new PackageTypeMembers[] { m });
        
        // start the retrieve request
        AsyncResult ar;
        try {
            ar = this.metadatabinding.retrieve(r);
//error out:  "Non nillable element 'version' is null" :-(
            // wait for it to complete, sleeping as necassary...

... ...


Below are detailed error messages...



ERROR | 17:00:08.321 | Exception: | BeanSerializer.java
java.io.IOException: java.io.IOException: Non nillable element 'version' is null.
    at org.apache.axis.encoding.ser.BeanSerializer.serialize(BeanSerializer.java:275)
    at org.apache.axis.encoding.SerializationContext.serializeActual(SerializationContext.java:1502)
    at org.apache.axis.encoding.SerializationContext.serialize(SerializationContext.java:978)
    at org.apache.axis.encoding.SerializationContext.serialize(SerializationContext.java:732)
    at org.apache.axis.encoding.ser.BeanSerializer.serialize(BeanSerializer.java:230)
    at org.apache.axis.encoding.SerializationContext.serializeActual(SerializationContext.java:1502)
    at org.apache.axis.encoding.SerializationContext.serialize(SerializationContext.java:978)
    at org.apache.axis.encoding.SerializationContext.serialize(SerializationContext.java:799)
    at org.apache.axis.message.RPCParam.serialize(RPCParam.java:208)
    at org.apache.axis.message.RPCElement.outputImpl(RPCElement.java:433)
    at org.apache.axis.message.MessageElement.output(MessageElement.java:1208)
    at org.apache.axis.message.SOAPBody.outputImpl(SOAPBody.java:139)
    at org.apache.axis.message.SOAPEnvelope.outputImpl(SOAPEnvelope.java:478)
    at org.apache.axis.message.MessageElement.output(MessageElement.java:1208)
    at org.apache.axis.SOAPPart.writeTo(SOAPPart.java:315)
    at org.apache.axis.SOAPPart.writeTo(SOAPPart.java:269)
    at org.apache.axis.SOAPPart.saveChanges(SOAPPart.java:530)
    at org.apache.axis.SOAPPart.getContentLength(SOAPPart.java:229)
    at org.apache.axis.Message.getContentLength(Message.java:510)
    at org.apache.axis.transport.http.HTTPSender.writeToSocket(HTTPSender.java:371)
    at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:138)
    at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
    at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
    at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
    at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
    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 com.sforce.soap._2006._04.metadata.MetadataBindingStub.retrieve(MetadataBindingStub.java:2121)
    at centtric.cloudfill.adapter.SalesforceMetaDataAdapter.retrieveReports(SalesforceMetaDataAdapter.java:111)
    at centtric.cloudfill.adapter.SalesforceMetaDataAdapterTest.testGetReportList(SalesforceMetaDataAdapterTest.java:15)


Can anyone please help me with below web service call out problem?

 

The callout request is blow:

<?xml version="1.0" encoding="UTF-8"?>

 <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<env:Header />

<env:Body><m:FopEngine xmlns:m="http://www.centtric.com/schema/FopEngine"><fileName>test</fileName>

</m:FopEngine>

</env:Body>

</env:Envelope>

 

The endpoint is on my local computer...

 

 

I tested the same requestin soapUI, it responses correctly, but doesn't work in force.com. Here is the returned error log:

 

20100125203747.498:Class.centtric.CF_ContractFopengine.FopEnginePort.FopEngine: line 18, column 13:     Created Web Service callout to endpoint: http://localhost:8080/fopengine/services/fopengine


20100125203747.498:Class.centtric.CF_ContractFopengine.FopEnginePort.FopEngine: line 18, column 13:     Sending callout request


20100125203747.498:Class.centtric.CF_ContractFopengine.FopEnginePort.FopEngine: line 18, column 13:     <?xml version="1.0" encoding="UTF-8"?><env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><env:Header /><env:Body><m:FopEngine xmlns:m="http://www.centtric.com/schema/FopEngine"><fileName>test</fileName></m:FopEngine></env:Body></env:Envelope>


20100125203747.498:Class.centtric.CF_ContractFopengine.FopEnginePort.FopEngine: line 18, column 13:     Reading callout response


20100125203747.498:Class.centtric.CF_ContractFopengine.FopEnginePort.FopEngine: line 18, column 13:     <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>ERROR: The requested URL could not be retrieved</TITLE>

 

 

I really really don't understand why same request is ok in soapUI, but not force.com....my external web service is quite simple, didn't use any complex soap type..here is the wsdl:

 

<!--
 Published by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is JAX-WS RI 2.2-hudson-752-.
-->

<wsdl:definitions name="FopEngine" targetNamespace="http://www.centtric.com/contract/FopEngine">

<wsdl:types>

<xsd:schema targetNamespace="http://www.centtric.com/schema/FopEngine">

<xsd:element name="FopEngine">

<xsd:complexType>

<xsd:sequence>
<xsd:element name="fileName" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>

<xsd:element name="FopEngineResponse">

<xsd:complexType>

<xsd:sequence>
<xsd:element name="returnedUrl" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
</wsdl:types>

<wsdl:message name="FopEngineRequest">
<wsdl:part element="fe:FopEngine" name="parameters"/>
</wsdl:message>

<wsdl:message name="FopEngineResponse">
<wsdl:part element="fe:FopEngineResponse" name="parameters"/>
</wsdl:message>

<wsdl:portType name="FopEnginePortType">

<wsdl:operation name="FopEngine">
<wsdl:input message="tns:FopEngineRequest"/>
<wsdl:output message="tns:FopEngineResponse"/>
</wsdl:operation>
</wsdl:portType>

<wsdl:binding name="FopEngineBinding" type="tns:FopEnginePortType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>

<wsdl:operation name="FopEngine">
<soap:operation soapAction=""/>

<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>

<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>

<wsdl:service name="FopEngineService">

<wsdl:port name="FopEnginePort" binding="tns:FopEngineBinding">
<soap:address location="http://localhost:8080/fopengine/services/fopengine"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>

 

 

 

Any tips, advise are appreciated.

 

 

 

 

 

  • January 25, 2010
  • Like
  • 0