Не удалось подключиться к POP3 в Mule ESB

Я столкнулся с проблемой при получении почты от Gmail с использованием соединителя POP3. Я получил ошибку аутентификации и ошибку EOF сокета.

org.mule.module.launcher.DeploymentStartException: AuthenticationFailedException: EOF on socket
    at org.mule.module.launcher.application.DefaultMuleApplication.start(DefaultMuleApplication.java:155)
    at org.mule.module.launcher.artifact.ArtifactWrapper$4.execute(ArtifactWrapper.java:98)
    at org.mule.module.launcher.artifact.ArtifactWrapper.executeWithinArtifactClassLoader(ArtifactWrapper.java:129)
    at org.mule.module.launcher.artifact.ArtifactWrapper.start(ArtifactWrapper.java:93)
    at org.mule.module.launcher.DefaultArtifactDeployer.deploy(DefaultArtifactDeployer.java:26)
    at org.mule.module.launcher.DefaultArchiveDeployer.guardedDeploy(DefaultArchiveDeployer.java:310)
    at org.mule.module.launcher.DefaultArchiveDeployer.deployArtifact(DefaultArchiveDeployer.java:330)
    at org.mule.module.launcher.DefaultArchiveDeployer.deployExplodedApp(DefaultArchiveDeployer.java:297)
    at org.mule.module.launcher.DefaultArchiveDeployer.deployExplodedArtifact(DefaultArchiveDeployer.java:108)
    at org.mule.module.launcher.DeploymentDirectoryWatcher.deployExplodedApps(DeploymentDirectoryWatcher.java:290)
    at org.mule.module.launcher.DeploymentDirectoryWatcher.start(DeploymentDirectoryWatcher.java:151)
    at org.mule.module.launcher.MuleDeploymentService.start(MuleDeploymentService.java:99)
    at org.mule.module.launcher.MuleContainer.start(MuleContainer.java:152)
    at org.mule.tooling.server.application.ApplicationDeployer.main(ApplicationDeployer.java:15)
Caused by: org.mule.api.lifecycle.LifecycleException: Failed to start inbound endpoint "endpoint.pop3.mailaddress.gmail.com"
    at org.mule.endpoint.DefaultInboundEndpoint.start(DefaultInboundEndpoint.java:118)
    at org.mule.construct.AbstractFlowConstruct.startIfStartable(AbstractFlowConstruct.java:322)
    at org.mule.construct.AbstractPipeline.doStart(AbstractPipeline.java:315)
    at org.mule.construct.AbstractFlowConstruct$2.onTransition(AbstractFlowConstruct.java:141)
    at org.mule.construct.AbstractFlowConstruct$2.onTransition(AbstractFlowConstruct.java:137)
    at org.mule.lifecycle.AbstractLifecycleManager.invokePhase(AbstractLifecycleManager.java:138)
    at org.mule.construct.FlowConstructLifecycleManager.fireStartPhase(FlowConstructLifecycleManager.java:92)
    at org.mule.construct.AbstractFlowConstruct.start(AbstractFlowConstruct.java:136)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:622)
    at org.mule.lifecycle.phases.DefaultLifecyclePhase.applyLifecycle(DefaultLifecyclePhase.java:237)
    at org.mule.lifecycle.RegistryLifecycleManager$RegistryLifecycleCallback.onTransition(RegistryLifecycleManager.java:273)
    at org.mule.lifecycle.RegistryLifecycleManager.invokePhase(RegistryLifecycleManager.java:152)
    at org.mule.lifecycle.RegistryLifecycleManager.fireLifecycle(RegistryLifecycleManager.java:123)
    at org.mule.registry.AbstractRegistryBroker.fireLifecycle(AbstractRegistryBroker.java:76)
    at org.mule.registry.MuleRegistryHelper.fireLifecycle(MuleRegistryHelper.java:136)
    at org.mule.lifecycle.MuleContextLifecycleManager$MuleContextLifecycleCallback.onTransition(MuleContextLifecycleManager.java:91)
    at org.mule.lifecycle.MuleContextLifecycleManager$MuleContextLifecycleCallback.onTransition(MuleContextLifecycleManager.java:87)
    at org.mule.lifecycle.MuleContextLifecycleManager.invokePhase(MuleContextLifecycleManager.java:69)
    at org.mule.lifecycle.MuleContextLifecycleManager.fireLifecycle(MuleContextLifecycleManager.java:61)
    at org.mule.DefaultMuleContext.start(DefaultMuleContext.java:278)
    at org.mule.module.launcher.application.DefaultMuleApplication.start(DefaultMuleApplication.java:133)
    ... 13 more

И мой поток..

<pop3:connector checkFrequency="100" doc:name="POP3" name="POP3" validateConnections="true" />

<flow name="incoming-orders" doc:name="incoming-orders">


        <pop3:inbound-endpoint connector-ref="POP3" doc:name="POP3" host="pop.gmail.com" password="pwd" port="995" responseTimeout="1000" user="mail%40gmail.com"/>

        <logger message="#[payload]" level="INFO" doc:name="Logger"/>

</flow>

Я хочу получать свою почту... Я не смог подключиться к gmail.. Мои pwd и имя пользователя верны, но я получил ошибку аутентификации. В моей учетной записи gmail включен POP3.. Как я могу решить эту проблему????


person user3855589    schedule 26.02.2015    source источник


Ответы (2)


Я смотрел ваш комментарий, и у меня была та же проблема, только что сработало один раз, но позже измените мою конфигурацию pop3s следующим образом, и это сработало, я надеюсь, что сработает и для вас.

<pop3s:connector name="pop3sConnector" checkFrequency="30000" doc:name="POP3" validateConnections="true">
    <pop3s:tls-client path="*" storePassword="*"/>
    <pop3s:tls-trust-store path="*" storePassword="*"/>
</pop3s:connector>
person Cesar Haro    schedule 10.10.2015

Попробуйте удалить часть @gmail.com атрибута пользователя.

person afelisatti    schedule 26.02.2015
comment
Тогда есть еще одна проблема, но если вы проверите журналы, когда соединение пытается установить, вы увидите, что @ добавляется неявно, поэтому у пользователя его не должно быть. Что касается другой проблемы, на ум приходят две вещи: 1) включение POP и менее безопасных приложений в учетной записи gmail и 2) что gmail требует, чтобы вы использовали SSL. - person afelisatti; 26.02.2015
comment
На самом деле, у меня недостаточно репутации, чтобы комментировать посты под постами, я пробовал, и, видимо, вам нужно более 50 репутации. Кроме того, @ — это проблема в предоставленной конфигурации, которая может привести к сбою такого приложения. Тем не менее, спасибо, я с нетерпением жду преодоления барьера в 50 повторений, чтобы я мог везде комментировать и помогать должным образом. - person afelisatti; 27.02.2015
comment
@user3855589 user3855589 только что попробовал это в 3.6.0, и это сработало <pop3s:inbound-endpoint host="pop.gmail.com" port="995" user="mail" password="pwd" responseTimeout="10000" doc:name="POP3"/>. Обратите внимание на изменения pop3s и mail. Я надеюсь, что это помогает. - person afelisatti; 27.02.2015
comment
Вы получаете исключение или почта просто не обрабатывается? Я считаю, что обрабатывается только непрочитанная почта, поэтому, если вы запустите приложение и после обработки почта будет помечена как прочитанная, приложение не заберет их во второй раз. - person afelisatti; 02.03.2015
comment
Является ли это возможным. Каждый раз, когда я получал как прочитанные, так и непрочитанные письма? - person user3855589; 02.03.2015