0

Velocity エンジンと Java メール サービスを使用してメールを送信しています。私はSMTPプロトコルを使用しています..これがそのための私の設定です

bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl"/

            property name="host" value="lotus.acme.com"/            
        property name="port" value="25"/
        property name="username" value="edosrvc"/
        property name="password" value="wipro@123"/
        property name="javaMailProperties"
            props
                <!-- Use SMTP transport protocol -->
                prop key="mail.transport.protocol">smtp</prop>
                <!-- Use SMTP-AUTH to authenticate to SMTP server -->
                <prop key="mail.smtp.auth">true</prop>
                  <prop key="mail.smtp.ssl.trust">*</prop> 

                <!-- Use TLS to encrypt communication with SMTP server -->
                <prop key="mail.smtp.starttls.enable">true</prop>
                <prop key="mail.debug">true</prop>
            </props>
        </property>
   </bean>

   <bean id="esi" class="com.example.NotificationServiceImpl">      
        <property name="mailSender" ref="mailSender" />
        <property name="velocityEngine" ref="velocityEngine" />     
   </bean>

   <bean id="velocityEngine"class="org.springframework.ui.velocity.VelocityEngineFactoryBean">        
 <property name="velocityProperties">
                       <value>
                   resource.loader=class
                    class.resource.loader.class=org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
                </value>
                    </property>             
    </bean>

    <bean id="templateMessage" class="org.springframework.mail.SimpleMailMessage">
        <property name="from" value="samplesrvc@acme.com"></property>

    </bean>

私もこのプロパティを含めてみました

*

それでも、ベロエラーが発生します

sun.security.provider.certpath.SunCertPathBuilderException: java.security.cert.CertPathBuilder.build(CertPathBuilder) の sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:174) で要求されたターゲットへの有効な証明書パスが見つかりません.java:238) で sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:280) で sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:191) で sun.security.validator.Validator.validate( Validator.java:218)

誰でもこの問題について私を助けてください。

私はこれらのプロトコルとサーバー証明書に非常に慣れていません。

誰でもすぐに仕事を終わらせる方法を教えてください。

前もって感謝します。

4

1 に答える 1

0

JavaMail のどのバージョンを使用していますか?

Session debuggingをオンにすると、デバッグ出力には何が表示されますか?

また、証明書に関連する追加のデバッグ出力を得るために、システム プロパティ「mail.socket.debug」を「true」に設定してみてください。

私は Velocity について何も知らないので、コード内のこれらのプロパティ設定がどのように JavaMail に到達するのかわかりませんが、そうではない可能性が非常に高いようで、問題を説明します。デバッグ出力は、実際に何が起こっているかを確認するのに役立ちます。

于 2012-04-19T17:12:57.063 に答える