2015-06-24 9 views
0

Я использую Mandrill API для отправки шаблонов электронных писем в Java, но я получаю следующее сообщение об ошибке:Mandrill-Ошибка при отправке шаблона электронной почты через Java

com.cribbstechnologies.clients.mandrill.exception.RequestFailedException: Failed : HTTP error code : 500 {"status":"error","code":5,"name":"Unknown_Template","message":"No such template \"Hello\""}

мой код:

public static void main(String[] args) { 
     config.setApiKey("Your_Api_Key"); 
     config.setApiVersion("1.0"); 
     config.setBaseURL("https://mandrillapp.com/api"); 

     request.setConfig(config); 
     request.setObjectMapper(mapper); 
     messagesRequest.setRequest(request); 
     client = new DefaultHttpClient(); 
     request.setHttpClient(client); 

     //MandrillMessageRequest mmr = new MandrillMessageRequest(); 
     MandrillHtmlMessage message = new MandrillHtmlMessage(); 
     Map<String, String> headers = new HashMap<String, String>(); 
     headers.put("X-MC-TrackingDomain", "http://executeproject.com:8585/OctopusMailTest/track?cmpid=1"); 
     message.setFrom_email("[email protected]"); 
     message.setFrom_name("Anand"); 
     message.setHeaders(headers); 
     //message.setHtml("<html><body><h1>Please Open this mail and click any where.i will track your click.</h1>Don't wait click google?<a href=\"http://www.google.com\">google</a></body></html>"); 
     message.setSubject("Good Afternoon !"); 

     MandrillRecipient[] recipients = new MandrillRecipient[]{new MandrillRecipient("anand","[email protected]"), new MandrillRecipient("rakesh","[email protected]"),new MandrillRecipient("Ravi","[email protected]")}; 
     message.setTo(recipients); 
     /*message.setTrack_clicks(true); 
     message.setTrack_opens(true);*/ 
     //mmr.setMessage(message); 


     MandrillTemplatedMessageRequest mtmr=new MandrillTemplatedMessageRequest(); 
     mtmr.setTemplate_name("Hello"); 
     TemplateContent template=new TemplateContent(); 
     List<TemplateContent>template_content=new ArrayList<TemplateContent>(); 
     template.setName("First Block"); 
     template.setContent("<h1>Helllo You are in First Block<br/>"); 
     template_content.add(template); 
     template.setName("Second Block"); 
     template.setContent("<h1>Helllo You are in Second Block"); 
     template_content.add(template); 
     mtmr.setTemplate_content(template_content); 
     mtmr.setMessage(message); 
     try { 
      messagesRequest.sendTemplatedMessage(mtmr); 
      //SendMessageResponse response = messagesRequest.sendMessage(mmr); 
      System.out.println("Message sent Successfully"); 

     } catch (RequestFailedException e) { 
      e.printStackTrace(); 

     } 
    } 
+0

ли вы на самом деле [добавлено] (https://mandrill.zendesk.com/hc/en-us/articles/205582507-Getting-Started-with-Templates/) * и * опубликован шаблон в вашем Mandrill аккаунт еще? – terrorbox

+0

Я хочу добавить Шаблон через вызов API. Не добавляется в аккаунт Mandrill. –

ответ

0

Попробуйте это.

MandrillApi mandrillApi = new MandrillApi("<Mandrill API here>"); 
MandrillTemplate newTemplate = mandrillApi.templates().add(
    "test_template_001", 
    "<html><body><h1>Hello World!</h1></body></html>", 
    false); 
Смежные вопросы