我编写了一个Java代码,以便在按下按钮时,默认电子邮件提供商会自动打开以发送电子邮件。我是否有可能自动将文件附加到电子邮件中并为电子邮件设置主题?
到目前为止这是代码:
if(role.getValue().equals("1")) {
try {
Desktop.getDesktop().browse(new URI("mailto:username@domain.com?subject=New_Profile&body=see attachment&attachment="PVS_XML.xml""));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
上面的代码由于某种原因不起作用:它强调整个mailto方法说:语法错误,插入“;”完成BlockStatements。
任何想法为什么?
答案 0 :(得分:2)
添加“mailto:username@domain.com”链接。这应该会触发您的浏览器启动标准邮件程序。
这与Wicket无关。这是标准的浏览器行为。
答案 1 :(得分:2)
'mailto:email@email.com?subject=Software&body=see attachment&attachment="C:/abc/def/qwertyp.zip"'
尝试以上它应该工作
编辑1:
不确定它是否可以在桌面上运行,但可以作为网页链接
从java作为字符串:
"'mailto:username@domain.com?subject=New_Profile&body=see attachment&attachment=\"PVS_XML.xml\"";
编辑2:
Desktop desktop = Desktop.getDesktop();
String message = "mailto:username@domain.com?subject=New_Profile&body=seeAttachment&attachment=c:/Update8.txt";
URI uri = URI.create(message);
desktop.mail(uri);
还发现附件部分未在Outlook中实现,因此它不支持使用mailto的附件。它取决于邮件客户端实现解析附件参数。
答案 2 :(得分:0)
Desktop
无效,因为它在服务器上运行,而不是在客户端上运行。它可能会打开服务器中的Outlook窗口,但是:)
你应该像其他人所说的那样使用mailto:
链接。但是,用户必须手动附加文件。浏览器强制要求这种安全问题。