• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 271
  • Last Modified:

how do i get proper emaiTemplate format

hi i am sending one email notification while sending mail i am not getting proper format


< html > < body > < br > To: some_name@gmail.com < br > From: noreply@gmail.com < br > Subject:Batchfile not Sent < br > Dear Sir/Madam, < br > No Records are sent to Email welcome letter via silver pop < br > < p > Sincerely, < br > Underwriting and Individual Enrollment < /p > < br > CODE_02 < /body > < /html > 

but actual format is:
To: some_name@gmail.com
From: noreply@gmail.com
Subject:User Defined
Dear Sir/Madam,
Threshhold amount is: 5
Sincerely,
Underwriting and Individual Enrollment
CODE_01


see the below code suggest how to resolve this**Thanks in advance***

public void sendEmail(final EmailDetail email) {
		MimeMessagePreparator preparator = new MimeMessagePreparator() {
			public void prepare(MimeMessage mimeMessage) throws Exception {
				MimeMessageHelper message = new MimeMessageHelper(mimeMessage);
				message.setFrom(email.getSenderEmailAddress());				
				message.setSubject(email.getSubjectLine());
				message.setContent(message, "text/html");
				Map<String, Object> model = new HashMap<String, Object>();
				model.put("email", email);
				String text = null;
				if(email.getReciepientEmailAddress().contains(","))
				{
					 email.getReciepientEmailAddress().replaceAll("\\s","");
					String[] emailAddreses = email.getReciepientEmailAddress().split(",");
					message.setTo(emailAddreses);
				}
				else
				message.setTo(email.getReciepientEmailAddress());
				
//				if (logger.isDebugEnabled()) {
					logger.debug("<<<temp email template file location>>");
//				}
				List<MessageTemplate> messageTemplate = messageTemplateDao
						.findByProperty("code", email.getTemplateCode());
//				if (logger.isDebugEnabled()) {
					logger.debug("<<<temp email template file location>>"
							+ tempTemplateFileLocation);
//				}
				File tempDir = new File(tempTemplateFileLocation);
				if (!tempDir.exists()) {
//					if (logger.isDebugEnabled()) {
						logger.debug("Temp email template location dosen't exist!");
//					}
					tempDir.mkdir();
				}
				File file = new File(tempTemplateFileLocation + "/template.vm");
				if (file.exists()) {
					file.delete();
				}

				FileWriter fileWriter = new FileWriter(tempTemplateFileLocation
						+ "template.vm");
				BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
				bufferedWriter.write(messageTemplate.get(0).getTemplate());
				if (bufferedWriter != null) {
					bufferedWriter.flush();
					bufferedWriter.close();
				}

				try {
					text = VelocityEngineUtils.mergeTemplateIntoString(
							velocityEngine, "/template.vm", model);
					message.setText(text, true);
				} catch (MailPreparationException e) {
					logger.error("Resource not Found",e);
				} finally {
					File file2 = new File(tempTemplateFileLocation
							+ "/template.vm");
				//	file2.delete();
				}
			}
		};

Open in new window

0
srikotesh
Asked:
srikotesh
  • 2
1 Solution
 
Scott Fell, EE MVEDeveloper & EE ModeratorCommented:
I can't help with the java part, but the problem you have is the html tags have white space.

Where you have "< br >"  That should be "<br>"

The corrected code is below.  If you can figure out how to get rid of all white space, you will be good.  I would even get rid of the white space between tags.

Convert this, "To: some_name@gmail.com <br> From: noreply@gmail.com <br> "

To this, To: some_name@gmail.com<br>From: noreply@gmail.com<br>

To: some_name@gmail.com <br> From: noreply@gmail.com <br> Subject:Batchfile not Sent <br> Dear Sir/Madam, <br> No Records are sent to Email welcome letter via silver pop <br> <p> Sincerely, <br> Underwriting and Individual Enrollment </p> <br> CODE_02

Open in new window

0
 
srikoteshAuthor Commented:
k,this template format we inserted in db there i observed between the tags some spaces are there,k i vl remove the whitespaces and try,
****Thanks******
0
 
srikoteshAuthor Commented:
Thanks for ur valuable suggestion
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now