小编Abi*_*san的帖子

无法连接到SMTP主机:smtp.gmail.com,port:465,响应:-1

发送邮件时,我收到此错误

java.lang.RuntimeException:javax.mail.SendFailedException:发送失败; 嵌套异常是:class javax.mail.MessagingException:无法连接到SMTP主机:smtp.gmail.com,port:465,响应:-1

我的代码是:

Properties props = new Properties();
props.put("mail.smtp.host", "smtp.gmail.com");
props.put("mail.smtp.starttls.enable","true");
props.put("mail.smtp.socketFactory.port", "465");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.port", "465");

Session session = Session.getDefaultInstance(props,
        new javax.mail.Authenticator() {
                protected PasswordAuthentication getPasswordAuthentication() {
                        return new PasswordAuthentication("email","password");
                }
        });

try {

        Message message = new MimeMessage(session);
        message.setFrom(new InternetAddress("email"));
        message.setRecipients(Message.RecipientType.TO,
                        InternetAddress.parse(this.to));
        message.setSubject("Testing");
        message.setText("Hey, this is the testing email.");



        Transport.send(message);
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激.

提前致谢.

java gmail smtp

20
推荐指数
3
解决办法
13万
查看次数

struts2 - 理解值栈

我有一个关于struts2值栈的问题.假设我有一个Action类RegisterAction,它有一个execute方法,如下所示:

public String execute() {
    ValueStack stack = ActionContext.getContext().getValueStack();
    stack.push(new String("test string"));
    return SUCCESS;
}
Run Code Online (Sandbox Code Playgroud)

我的struts.xml看起来像这样:

<struts>
    <package name="default" extends="struts-default">
        <action name="*Register" method="{1}" class="vaannila.RegisterAction">
            <result name="populate">/register.jsp</result>
            <result name="input">/register.jsp</result>
            <result name="success">/success.jsp</result>
        </action>        
        <action name="*Test" method="{1}" class="vaannila.TestAction">
            <result name="test">/test.jsp</result>
            <result name="success">/success2.jsp</result>
        </action>        
    </package>
</struts>
Run Code Online (Sandbox Code Playgroud)

因此,在该类中执行execute方法后,控制将流向success.jsp.

我的问题是:

1)如何获得我在堆栈中推送的值success.jsp

2)让我们说success.jsp我有一个<s:submit method="testMethod" />重定向到一个名为的动作类TestAction.换句话说,从Register页面,用户单击submit,并在我们的执行方法中RegisterAction推送堆栈上的"测试字符串".然后我们去success.jsp.该success.jsp有一个提交按钮,指导我们TestAction#testMethod.在TestAction#testMethod,我RegisterAction#execute仍然在堆栈上推送的值是什么?我怎么才能得到它?我逐步完成了eclipse调试器,但我没有看到它的价值.

谢谢.

java struts2 valuestack

17
推荐指数
1
解决办法
3万
查看次数

在哪里放struts.xml

使用Struts2,我们必须struts.xml在类路径中,因此它不再适用于WEB-INF.所以我让我的项目部署的方式是坚持下去WEB-INF/classes并让它包括在内../struts2.xml

2个问题:

  1. 当我进行重建时,Eclipse会清除classes文件夹,因此会删除它 struts.xml
  2. Eclipse没有在我的项目浏览器中显示classes文件夹,所以它首先粘贴配置文件是一个不好的地方.

Struts2 Eclipse开发人员如何做到这一点?

struts2 configure

16
推荐指数
1
解决办法
3万
查看次数

bin的java.exe和jre的java.exe之间的区别?

我是java的新手.我有一个混乱,使用解释器来执行java程序,因为我可以看到bin文件夹中的两个java.exe和jre的bin文件夹中的其他内容.

等待专家的宝贵答案!

我想添加一些细节来清除我的查询:

假设java安装在C:\ Program Files\Java\Jdk1.6中,现在,在这个目录中还有jre文件夹,bin文件夹和其他文件夹,但让我们专注于这两个.这个..\jre\bin文件夹包含java.exe&..\bin文件夹还包含java.exe所以,我关心的是用哪个java解释器来执行java程序.

我希望这能帮助你更好地理解我的问题

java

16
推荐指数
2
解决办法
8796
查看次数

getter与setter与成员之间的JAXB注释之间的区别是什么?

标题说明了一切.

我想知道@XmlElement在字段/ getter/setter上放置JAXB注释(如)之间的主要区别是什么.在我看来(在简单的情况下)它并不重要.

我们拿这个吧

class A  {
    private String a;

    public String getA() { return a; }

    public void setA(String a) { this.a = a; }
}
Run Code Online (Sandbox Code Playgroud)

现在在我看来,如果我放置@XmlElement成员字段或getter/setter 并不重要.它只是编组好的.当我需要做出改变并且什么时候重要时,是否有任何用例?

当我去解组这个(xml回到A)JAXB具体做什么?

我正在使用JAXB MOXy实现

谢谢

java xml jaxb marshalling unmarshalling

16
推荐指数
1
解决办法
1万
查看次数

SCRIPT_PATH ="$ {BASH_SOURCE [0]}"错误的替换

在Centos上,我的脚本运行正常.但是当我运行脚本时,在Debian Squeeze上,我得到了:

cpfailover.sh: 30: Bad substitution
Run Code Online (Sandbox Code Playgroud)

脚本说:

SCRIPT_PATH="${BASH_SOURCE[0]}";
Run Code Online (Sandbox Code Playgroud)

我在许多例子中看到过,即使在这里,这是正确的行号.问题出在哪儿.

variables bash

15
推荐指数
1
解决办法
9979
查看次数

交换地图中的键和值

是否有一个函数来交换给定地图的键和值.因此,给定一个地图,我希望键成为值,并为键值.

(swap {:a 2 b 4}) => {2 :a 4 :b}
Run Code Online (Sandbox Code Playgroud)

一种方法是

(zipmap (vals my-map) (keys my-map))
Run Code Online (Sandbox Code Playgroud)

但是想知道clojure是否为此提供了实用程序fn?

clojure

15
推荐指数
3
解决办法
4266
查看次数

如何创建仅在vaadin中支持数字的文本字段

我正在使用Vaadin文本字段,我想限制它仅支持数字.我试图覆盖setValue()并返回而不调用super.setValue() 如果文本不是数字.但它似乎没有起作用.我怎么能纠正这个?我正在使用Vaadin 7.我认为它也不支持NumberField.

java textfield vaadin

12
推荐指数
2
解决办法
2万
查看次数

使用jquery动态填充选择选项

将有两个下拉列表,

首先是移动供应商列表,第二个是每个供应商的模型列表.

当从第一个下拉列表中选择供应商时,第二个下拉列表应该动态填充该供应商的相关模型.这适用于移动网站,最好使用jquery-mobile

第二个选项值将在json映射中.

  <select class="mobile-vendor">
    <option value="motorola">Motorola</option>
    <option value="nokia">Nokia</option>
    <option value="android">Android</option>
  </select>

 selectValues = {"nokia"   : {"N97":"download-link", 
                              "N93":"download-link"}, 
                 "motorola": {"M1":"download-link",
                              "M2":"download-link"}}

<select class="model">
    <option></option>
</select>
Run Code Online (Sandbox Code Playgroud)

例如,如果用户在第一个下拉列表中选择nokia,则第二个下拉列表应该具有N97,N93作为选项.

javascript jquery jquery-mobile

11
推荐指数
1
解决办法
3万
查看次数

在Gjs中使用Shell对象

我正在使用Gjs(Gnome JavaScript绑定)编写gtk +应用程序由于没有可用的文档,我正在阅读gnome-shell JavaScript的源代码.在我的应用程序中,我需要访问global.userdatadir.

我试图将Shell对象添加到我的脚本:

const Shell = imports.gi.Shell;
Run Code Online (Sandbox Code Playgroud)

然后运行它#gjs myscript.js 但是当我这样做时它会抛出一个错误说:

JS ERROR: !!!   Exception was: Error: Requiring Shell, version none: Typelib file for namespace 'Shell' (any version) not found
    JS ERROR: !!!     lineNumber = '0'
    JS ERROR: !!!     fileName = '"gjs_throw"'
    JS ERROR: !!!     stack = '"("Requiring Shell, version none: Typelib file for namespace 'Shell' (any version) not found")@gjs_throw:0
@manager.js:5
"'
    JS ERROR: !!!     message = '"Requiring Shell, version none: Typelib file for namespace 'Shell' …
Run Code Online (Sandbox Code Playgroud)

gnome-shell

11
推荐指数
1
解决办法
1382
查看次数