Here is some code snippet to give you an idea of what I got so far. I can output the Word document fine this way. I can also access the image via the URL in the browser, but the Word documents src does not appear to be hitting the servlet(according to some logs I have).
ExportServlet.java `
response.setContentType("application/ms-word");
String imageUrl = request.getScheme() + "://" + request.getServerName() +
":" + request.getServerPort() + request.getContextPath() +
"/ExportImage";
PrintWriter out = response.getWriter();
out.println("<html xmlns:o='urn:schemas-microsoft-com:office:office'
xmlns:w='urn:schemas-microsoft-com:office:word'
xmlns:v='urn:schemas-microsoft-com:vml'
xmlns='http://www.w3.org/TR/REC-html40'>
<head>
<title>Exported Documents</title>
<!--[if gte mso 9]>
<xml>
<w:WordDocument>
<w:View>Print</w:View>
<w:Zoom>100</w:Zoom>
<w:DoNotOptimizeForBrowser/>
<w:BreakWrappedTables/>
</w:WordDocument>
</xml>
<![endif]-->
</head>
<body>
<img src=\"" + imageUrl + "\">
</body>
</html>")
out.flush();
`
ExportImage.java
Logger.log("getting Image");
ServletContext servletContext = getServletContext();
String filename = servletContext.getRealPath("myImage.gif");
response.setContentType(
servletContext.getMimeType(filename));
File file = new File(filename);
response.setContentLength((int)file.length());
FileInputStream in = new FileInputStream(file);
OutputStream out = response.getOutputStream();
// Copy the contents of the file to the output stream
byte[] buf = new byte[1024];
int count = 0;
while ((count = in.read(buf)) >= 0) {
out.write(buf, 0, count);
}
in.close();
out.flush();
out.close();