• GC_00001
  • NEWBIE
  • 40 Points
  • Member since 2010

  • Chatter
    Feed
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 9
    Questions
  • 4
    Replies
Have just started getting a problem using dataloader. I am running batch jobs that call dataloader which have worked successfully for a long time. I am now getting the following which I think is the problem (I have included the full message out put after):
Caused by: javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
        at sun.security.ssl.SSLSessionImpl.getPeerCertificates(Unknown Source)
        at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.jav

I do not know of anything that has changed but this sounds to me like something needs to be generated but I have no idea how to go abut it. Any help would be appreciated.
--------------------------------------------------------------------------------
-------
This uploads individual products to SFDC (i.e not the full initial load)
Clear out the log folder before do anything
--------------------------------------------------------------------------------
-------
F:\SalesforceLogs\DataLoaderUpsertLogs\csvUpdateSMPickProcess.log
F:\SalesforceLogs\DataLoaderUpsertLogs\errorcsvUpdateSMPickProcess.csv
F:\SalesforceLogs\DataLoaderUpsertLogs\successcsvUpdateSMPickProcess.csv
        3 file(s) moved.
--------------------------------------------------------------------------------
-------
        Call the process batch file which needs a config parameter and the proce
ss name parameter
        Batch File that identifies the driver to be used, Folder that contains t
he process_conf.xml file,
bean within the process_conf.xml file
--------------------------------------------------------------------------------
-------
"C:\Program Files (x86)\salesforce.com\Data Loader\Java\bin\java.exe" -cp "C:\Pr
ogram Files (x86)\salesforce.com\Data Loader\DataLoader-29.0.0-uber.jar" -Dsales
force.config.dir="D:\Salesforce\DataLoader" com.salesforce.dataloader.process.Pr
ocessRunner process.name=csvUpdateSMPickProcess
2018-05-25 09:14:31,568 INFO  [main] controller.Controller initLog (Controller.j
ava:389) - Using built-in logging configuration, no log-conf.xml in D:\Salesforc
e\DataLoader\log-conf.xml
2018-05-25 09:14:31,568 INFO  [main] controller.Controller initLog (Controller.j
ava:391) - The log has been initialized
2018-05-25 09:14:31,568 INFO  [main] process.ProcessConfig getBeanFactory (Proce
ssConfig.java:104) - Loading process configuration from config file: D:\Salesfor
ce\DataLoader\process-conf.xml
2018-05-25 09:14:31,646 INFO  [main] support.AbstractApplicationContext prepareR
efresh (AbstractApplicationContext.java:495) - Refreshing org.springframework.co
ntext.support.FileSystemXmlApplicationContext@1cfe4b2: startup date [Fri May 25
09:14:31 BST 2018]; root of context hierarchy
2018-05-25 09:14:31,677 INFO  [main] xml.XmlBeanDefinitionReader loadBeanDefinit
ions (XmlBeanDefinitionReader.java:315) - Loading XML bean definitions from file
 [D:\Salesforce\DataLoader\process-conf.xml]
2018-05-25 09:14:31,771 INFO  [main] support.DefaultListableBeanFactory preInsta
ntiateSingletons (DefaultListableBeanFactory.java:557) - Pre-instantiating singl
etons in org.springframework.beans.factory.support.DefaultListableBeanFactory@13
6f0f5: defining beans [sqlExtractSMWOLineProcessPICK,sqlExtractSMWOLineProcessRe
ason,sqlExtractSMWOLineProcessStatus,sqlExtractAllSMProductProcess,csvUpdateFSLi
neStatusProcess,csvUpdateSMPickProcess,sqlUpdateWorkOrderOpenProcess,csvUpdateSM
ProductProcess,sqlExtractSFDCOrderProcess,sqlUpdatePTDBWarrantyInfoProcess,csvUp
dateSFDCOrderHeaderWithNewOwnerProcess,sqlExtractCreditHoldInformationProcess,cs
vUpdateSFDCItemTrackedProcess,sqlExtractAllProductProcess,csvInsertSMPriceBookEn
tryProcessEUR,csvInsertSMPriceBookEntryProcessUSD]; root of factory hierarchy
2018-05-25 09:14:31,802 INFO  [csvUpdateSMPickProcess] controller.Controller ini
tConfig (Controller.java:327) - config dir created at D:\Salesforce\DataLoader
2018-05-25 09:14:31,818 INFO  [csvUpdateSMPickProcess] controller.Controller ini
tConfig (Controller.java:355) - The controller config has been initialized
2018-05-25 09:14:31,818 INFO  [csvUpdateSMPickProcess] process.ProcessRunner run
 (ProcessRunner.java:116) - Initializing process engine
2018-05-25 09:14:31,818 INFO  [csvUpdateSMPickProcess] process.ProcessRunner run
 (ProcessRunner.java:119) - Loading parameters
2018-05-25 09:14:32,473 INFO  [csvUpdateSMPickProcess] config.LastRun load (Last
Run.java:96) - Last run info will be saved in file: F:\SalesforceLogs\Properties
Files\csvUpdateSMPickProcess_lastRun.properties
2018-05-25 09:14:32,489 INFO  [csvUpdateSMPickProcess] process.ProcessRunner run
 (ProcessRunner.java:127) - Logging in to: https://login.salesforce.com
2018-05-25 09:14:32,489 INFO  [csvUpdateSMPickProcess] client.PartnerClient logi
n (PartnerClient.java:479) - Beginning Partner Salesforce login ....
2018-05-25 09:14:32,504 INFO  [csvUpdateSMPickProcess] client.PartnerClient logi
nInternal (PartnerClient.java:523) - Salesforce login to https://login.salesforc
e.com/services/Soap/u/37.0 as user interface@incadigital.com
[WSC][ProcessRunner.main:253]Log file already exists, appending to F:\Salesforce
Logs\DataLoaderUpsertLogs\csvUpdateSMPickProcess.log
2018-05-25 09:14:33,144 INFO  [csvUpdateSMPickProcess] dao.DataAccessObjectFacto
ry getDaoInstance (DataAccessObjectFactory.java:51) - Instantiating data access
object: D:\Salesforce\Extract_Import Files\SQLPickToSM.csv of type: csvRead
2018-05-25 09:14:33,144 INFO  [csvUpdateSMPickProcess] process.ProcessRunner run
 (ProcessRunner.java:132) - Checking the data access object connection
2018-05-25 09:14:33,159 INFO  [csvUpdateSMPickProcess] process.ProcessRunner run
 (ProcessRunner.java:137) - Setting field types
2018-05-25 09:14:33,721 INFO  [csvUpdateSMPickProcess] process.ProcessRunner run
 (ProcessRunner.java:141) - Setting object reference types
2018-05-25 09:14:57,261 ERROR [csvUpdateSMPickProcess] client.PartnerClient runO
peration (PartnerClient.java:332) - Error while calling web service operation: d
escribeSObject, error was: Failed to send request to https://eu1.salesforce.com/
services/Soap/u/37.0/00D20000000MekP
com.sforce.ws.ConnectionException: Failed to send request to https://eu1.salesfo
rce.com/services/Soap/u/37.0/00D20000000MekP
        at com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:121)
        at com.sforce.soap.partner.PartnerConnection.describeSObject(PartnerConn
ection.java:1413)
        at com.salesforce.dataloader.client.PartnerClient$10.run(PartnerClient.j
ava:185)
        at com.salesforce.dataloader.client.PartnerClient$10.run(PartnerClient.j
ava:177)
        at com.salesforce.dataloader.client.PartnerClient.runOperation(PartnerCl
ient.java:328)
        at com.salesforce.dataloader.client.PartnerClient.describeSObject(Partne
rClient.java:726)
        at com.salesforce.dataloader.client.PartnerClient.setFieldReferenceDescr
ibes(PartnerClient.java:654)
        at com.salesforce.dataloader.controller.Controller.setReferenceDescribes
(Controller.java:135)
        at com.salesforce.dataloader.process.ProcessRunner.run(ProcessRunner.jav
a:142)
        at com.salesforce.dataloader.process.ProcessRunner.run(ProcessRunner.jav
a:100)
        at com.salesforce.dataloader.process.ProcessRunner.main(ProcessRunner.ja
va:253)
Caused by: javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
        at sun.security.ssl.SSLSessionImpl.getPeerCertificates(Unknown Source)
        at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.jav
a:128)
        at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFact
ory.java:572)
        at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnect
ion(DefaultClientConnectionOperator.java:180)
        at org.apache.http.impl.conn.ManagedClientConnectionImpl.open(ManagedCli
entConnectionImpl.java:294)
        at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(Default
RequestDirector.java:640)
        at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultReq
uestDirector.java:479)
        at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpCl
ient.java:906)
        at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpCl
ient.java:805)
        at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpCl
ient.java:784)
        at com.salesforce.dataloader.client.HttpClientTransport.getContent(HttpC
lientTransport.java:129)
        at com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:97)
        ... 10 more
2018-05-25 09:14:57,277 FATAL [main] process.ProcessRunner topLevelError (Proces
sRunner.java:238) - Unable to run process csvUpdateSMPickProcess
java.lang.RuntimeException: com.sforce.ws.ConnectionException: Failed to send re
quest to https://eu1.salesforce.com/services/Soap/u/37.0/00D20000000MekP
        at com.salesforce.dataloader.process.ProcessRunner.run(ProcessRunner.jav
a:162)
        at com.salesforce.dataloader.process.ProcessRunner.run(ProcessRunner.jav
a:100)
        at com.salesforce.dataloader.process.ProcessRunner.main(ProcessRunner.ja
va:253)
Caused by: com.sforce.ws.ConnectionException: Failed to send request to https://
eu1.salesforce.com/services/Soap/u/37.0/00D20000000MekP
        at com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:121)
        at com.sforce.soap.partner.PartnerConnection.describeSObject(PartnerConn
ection.java:1413)
        at com.salesforce.dataloader.client.PartnerClient$10.run(PartnerClient.j
ava:185)
        at com.salesforce.dataloader.client.PartnerClient$10.run(PartnerClient.j
ava:177)
        at com.salesforce.dataloader.client.PartnerClient.runOperation(PartnerCl
ient.java:328)
        at com.salesforce.dataloader.client.PartnerClient.describeSObject(Partne
rClient.java:726)
        at com.salesforce.dataloader.client.PartnerClient.setFieldReferenceDescr
ibes(PartnerClient.java:654)
        at com.salesforce.dataloader.controller.Controller.setReferenceDescribes
(Controller.java:135)
        at com.salesforce.dataloader.process.ProcessRunner.run(ProcessRunner.jav
a:142)
        ... 2 more
Caused by: javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
        at sun.security.ssl.SSLSessionImpl.getPeerCertificates(Unknown Source)
        at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.jav
a:128)
        at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFact
ory.java:572)
        at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnect
ion(DefaultClientConnectionOperator.java:180)
        at org.apache.http.impl.conn.ManagedClientConnectionImpl.open(ManagedCli
entConnectionImpl.java:294)
        at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(Default
RequestDirector.java:640)
        at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultReq
uestDirector.java:479)
        at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpCl
ient.java:906)
        at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpCl
ient.java:805)
        at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpCl
ient.java:784)
        at com.salesforce.dataloader.client.HttpClientTransport.getContent(HttpC
lientTransport.java:129)
        at com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:97)
        ... 10 more
Press any key to continue . . .





 
I have the following code in a webserve that would be querying the Account object. It has worked for years but appears to have now stopped working. The name in the id is the salesforce partner(?) that originally wrote this code but not sure if that is relevant.
    private sforce.SforceService GetDefaultSforceBinding()
    {
        sforce.SforceService binding = new sforce.SforceService();

        if (Convert.ToBoolean(ConfigurationManager.AppSettings["SFSandbox"]))
            binding.Url = ConfigurationManager.AppSettings["AlternativeSalesForceUrl"].ToString();

        // set call options
        binding.CallOptionsValue = new sforce.CallOptions();
        binding.CallOptionsValue.client = "westbrook/Inca";

        return binding;
    }
I am very new to this kind of thing so would appreciate any help.
I have a small VF page which I want to use to override the Edit button on a custom (managed package) object with a message rather than an edit page. However, if the user logged in has a particular profile, I want the action to continue and to display a custom page layout in edit mode. The folloiwng code displays the message fine for a non Custom System Administrator but otherwisde it displays an edit page that looks a standard (default) one rather than the page layout I want.

I feel like it should juts be something small to achieve this but I cannot get to it.

<apex:page standardController="SVMXC__Service_Order_Line__c" action="{!if($Profile.Name <> 'Custom System Administrator', Null, urlFor($Action.SVMXC__Service_Order_Line__c.Edit, 
$ObjectType.SVMXC__Service_Order_Line__c, null, true))}">
  <h1>Warning:</h1>
  This link is disabled. Work Details may only be changed via SFM. Select the Line Number to view the Work Detail.
</apex:page>
I have an on change event on my VF page which fires OK when the field is changed but the code in the controller still appears to be looking at the original value in the field rather than the the changed value - I can tell this from System.debugs I have used.. Should I be passing a parameter in some way or am I just not using the correct field in the action=

Controller Code snippet :
         public void onReasonForOrderLineChange() {     
            if (null == orderLineItem.Free_of_Charge_reason__c){
                orderLineItem.Free_of_Charge__c = False;
            } else {
                //if (orderLineItem.Free_of_Charge_reason__c.substring(0,3) == 'FOC') {
                if (orderLineItem.Free_of_Charge_reason__c.left(3) == 'FOC') {
                    orderLineItem.Free_of_Charge__c = True;
                    orderLineItem.Price_Charged__c = 0;
                } else {
                    orderLineItem.Free_of_Charge__c = False;
                    orderLineItem.Price_Charged__c = orderLineItem.Standard_Price__c;
                }
            }
        }

Visual Force Page
   <apex:pageBlockSectionItem >
   <apex:outputLabel value="{!$ObjectType.Order_Line_Item__c.fields.Free_of_Charge_reason__c.label}" />
         <apex:outputPanel id="LineReason">
             <apex:inputField rendered="{!isFOCEditable}" value="{!lineItem.orderLineItem.Free_of_Charge_reason__c}" >
                  <apex:actionSupport event="onchange" action="{!lineItem.onReasonForOrderLineChange}" rerender="lineItemsPane, orderTotal" status="overlayStatus">
             </apex:inputField>
             <apex:outputField value="{!lineItem.orderLineItem.Free_of_Charge_reason__c}" rendered="{!isFOCEditable}"/>
         </apex:outputPanel>
    </apex:pageBlockSectionItem>  
 
Not experienced in apex code so would appreciate some help.
Within a controller I am trying to retrieve the first 3 characters of a field to either store or just query on direct.

I have the following two fields defined:

    public String orderHeaderReason {get; set;}
    public String orderHeaderReasonFirst3 {get; set;}

and then want to use them as follows:
              // Save the reason specified on the OrderHeader - this works OK
              orderHeaderReason = orderHeader.Reason_for_Order_FOC__c;

              // Save the first 3 characters of the same field   - this fails
              orderHeaderReasonFirst3 = orderHeader.Reason_for_Order_FOC__c.substring(0,2);

              //This also fails
              orderHeaderReasonFirst3= orderHeaderReason.substring(0,2);

I am assuming that I have not correctly defined the fields orderHeaderReason and  orderHeaderReasonFirst3 but cannot see what I should be doing - I need to instantiate them in some way?

Thanks
In a Controller for a VF page I have the following which opens up a small form. That bit is OK. If an error is returned from that function I want the form to remain showing (it has an error message) but it disappears after the Save button is selected on that small form and I cannot get it to remain. If there is no error then I am expecting processing to continue OK i.e the small form to have disappeared and stay disappeared.

It is this line in the following code extract that I am expecting to change. Any help would be appreciated on what the rerender statement is doing.

 <apex:actionFunction name="saveNewShipTo" action="{!saveNewShipTo}" rerender="shipTo, msgSfdcSave, msgWebService, errmsg" 

<!--embedded New "Ship To" address control -->
<apex:outputpanel styleClass="shipToDialogue" id="dialogPanel" layout="block">
<apex:form id="shipToForm" >
<apex:actionRegion >
    <apex:pageBlock >
          <apex:pageBlockSection columns="1" showHeader="false">
                <apex:repeat value="{!$ObjectType.Ship_To__c.FieldSets.Order_Header}" var="field">
                    <apex:inputField value="{!ShipToProxy[field]}" style="margin-left:10pt;"
                        styleClass="dialogueField {!field}" />
                </apex:repeat>

                <apex:actionRegion immediate="true">
                <apex:commandButton value="{!$Label.Get_A_C_Vat_Id}" action="{!getAccountVatId}" status="overlayStatus" reRender="ship_to_vat_id" />
                </apex:actionRegion>
                <apex:inputField id="ship_to_vat_id" value="{!ShipToProxy.VAT_Id2__c}" style="margin-left: 10pt;"
                    styleClass="dialogueField VAT_Id2__c" />
                <!--
                  <apex:repeat value="{!ShipToAddressFields}" var="shipTo">          
                  <apex:inputField value="{!ShipToProxy[shipTo]}" style="margin-left:10pt;" styleClass="dialogueField {!shipTo}"/>
                  </apex:repeat>
                  -->
          </apex:pageBlockSection>
    </apex:pageBlock>
     <apex:actionFunction name="saveNewShipTo" action="{!saveNewShipTo}" rerender="shipTo, msgSfdcSave, msgWebService, errmsg" status="overlayStatus"/>status="overlayStatus"/>
    <script>
        //have to do that every time when ShipTo area is re-rendered
        initDialogue("{!$Component.dialogPanel}");
    </script>
</apex:actionRegion>
</apex:form>
</apex:outputpanel>
<div id="overlay"></div>
</apex:page>
Having just been doing a number of unit tests whilst deploying various things, it would appear that the autonumber of cases has incrementd in line with the number of dummy cases that would have been temporarily inserted during the tests.

This means that we now have big gaps in the numbers in our production environment..

Can anyone please confirm whether this is what is probably happening and if so is there anyway to stop it?

Thanks,
I need to make the following piece of code work (within a trigger) for mass case updates. It works fine for when one case is updated but I know that the List<Account>.. within the for loop gives a too many soql queries message when I am mass updating. How do I move this outside the for loop but still be able to get hold of the relevant field from the associated account I want to update the case with? (I appreciate this is probably a basic thing but this is my first foray into "bulkifying").

} else if (Trigger.isUpdate && Trigger.isBefore) {
       
        List<Case> updatedCases = Trigger.New;
        Map<Id,Case> oldMap = Trigger.oldMap;      
       
        Set<Id> machineIdSet = new Set<Id>();
       
        for(Case updatedCase: updatedCases)
        {          
            if(updatedCase.AssetId != null)
            {
                machineIdSet.add(updatedCase.AssetId);
            }

            if(updatedCase.ClosedDate == null)
            {
                if(updatedCase.AccountId != null)
                {
                    List<Account> Account = [SELECT id,Country__c, Region__c, Distributor__r.Name, US__c FROM Account WHERE id = :updatedCase.AccountId];
                    for(Account ac : Account)
                    {
                        if (updatedCase.Account_Country__c <> ac.Country__c)
                        {
                           updatedCase.Account_Country__c = ac.Country__c;
                        }

                    }
                }
I have an insert/update trigger (not written by me) on the case object which has been working fine.
I have now added a couple of new case record types but this trigger does not appear to run for either of them. Is there something I need to set to activate the trigger against these new record types?

I had assumed that the trigger was against the Case object and so would run irrespective of the record type. I am new to Apex code altogether and have a problem with knowing where to start with trying to debug this problem. There does not seem to be any hard code that refers to the record type for functions that would eliminate these record types.
Not experienced in apex code so would appreciate some help.
Within a controller I am trying to retrieve the first 3 characters of a field to either store or just query on direct.

I have the following two fields defined:

    public String orderHeaderReason {get; set;}
    public String orderHeaderReasonFirst3 {get; set;}

and then want to use them as follows:
              // Save the reason specified on the OrderHeader - this works OK
              orderHeaderReason = orderHeader.Reason_for_Order_FOC__c;

              // Save the first 3 characters of the same field   - this fails
              orderHeaderReasonFirst3 = orderHeader.Reason_for_Order_FOC__c.substring(0,2);

              //This also fails
              orderHeaderReasonFirst3= orderHeaderReason.substring(0,2);

I am assuming that I have not correctly defined the fields orderHeaderReason and  orderHeaderReasonFirst3 but cannot see what I should be doing - I need to instantiate them in some way?

Thanks
Having just been doing a number of unit tests whilst deploying various things, it would appear that the autonumber of cases has incrementd in line with the number of dummy cases that would have been temporarily inserted during the tests.

This means that we now have big gaps in the numbers in our production environment..

Can anyone please confirm whether this is what is probably happening and if so is there anyway to stop it?

Thanks,
I need to make the following piece of code work (within a trigger) for mass case updates. It works fine for when one case is updated but I know that the List<Account>.. within the for loop gives a too many soql queries message when I am mass updating. How do I move this outside the for loop but still be able to get hold of the relevant field from the associated account I want to update the case with? (I appreciate this is probably a basic thing but this is my first foray into "bulkifying").

} else if (Trigger.isUpdate && Trigger.isBefore) {
       
        List<Case> updatedCases = Trigger.New;
        Map<Id,Case> oldMap = Trigger.oldMap;      
       
        Set<Id> machineIdSet = new Set<Id>();
       
        for(Case updatedCase: updatedCases)
        {          
            if(updatedCase.AssetId != null)
            {
                machineIdSet.add(updatedCase.AssetId);
            }

            if(updatedCase.ClosedDate == null)
            {
                if(updatedCase.AccountId != null)
                {
                    List<Account> Account = [SELECT id,Country__c, Region__c, Distributor__r.Name, US__c FROM Account WHERE id = :updatedCase.AccountId];
                    for(Account ac : Account)
                    {
                        if (updatedCase.Account_Country__c <> ac.Country__c)
                        {
                           updatedCase.Account_Country__c = ac.Country__c;
                        }

                    }
                }
I have an insert/update trigger (not written by me) on the case object which has been working fine.
I have now added a couple of new case record types but this trigger does not appear to run for either of them. Is there something I need to set to activate the trigger against these new record types?

I had assumed that the trigger was against the Case object and so would run irrespective of the record type. I am new to Apex code altogether and have a problem with knowing where to start with trying to debug this problem. There does not seem to be any hard code that refers to the record type for functions that would eliminate these record types.