通过SOA / UMS触发的SMS无法从sdpmessagingdriver-smpp驱动程序配置设置中获取发件人地址

时间:2017-10-26 12:47:41

标签: oracle smpp oim oracle-soa oracle-enterprise-manager

说明

  • 我们正在使用部署在SOA服务器上的 sdpmessagingdriver-smpp驱动程序 发送短信。
  • 我们已经使用"发件人地址"配置了SMPP驱动程序属性。 &安培; "默认发件人地址"。
  • 当我们尝试发送短信时,它会失败并显示错误消息"无效 来源地址"。
  

经过一番调查后,我们发现submit_sm请求中的发件人地址为空,这导致问题"无效      来源地址" 。现在出现的问题是,在SMPP驱动程序配置设置中已经配置了发件人请求时,为什么发件人地址为空?我们需要在其他地方配置发件人地址吗?是否有配置文件来配置此设置?

REFERENCE SCREENSHOTS:

SMPP驱动程序特定配置:

  • 您可以看到 发件人地址 默认发件人 配置中提供了地址

enter image description here

消息状态(短信故障日志):

  • 下面提供的屏幕截图显示了包含空白发件人的失败短信 地址。

enter image description here

后端错误日志:

  

[2017-10-17T10:33:16.806 + 05:30] [WLS_SOA] [错误] [SDP-25700]   [oracle.sdp.messaging.driver.smpp] [tid:Workmanager :,版本:0,   Scheduled = false,Started = false,等待时间:0 ms \ n] [userId:   OracleSystemUser] [ecid:   49d20b62a8084325:-5336381e:15f247fea2f:-8000-000000000001c322,0] [APP:   usermessagingdriver-smpp]发现了一个意外的异常。[[   oracle.sdp.messaging.driver.DriverException:无效的源地址[a]   在   oracle.sdpinternal.messaging.driver.smpp.SMPPDriver.send(SMPPDriver.java:1073)   在   oracle.sdpinternal.messaging.driver.smpp.SMPPDriver.send(SMPPDriver.java:3268)   在   oracle.sdpinternal.messaging.driver.smpp.SMPPDriver.send(SMPPDriver.java:2849)   在   oracle.sdpinternal.messaging.driver.smpp.SMPPDriver.send(SMPPDriver.java:2724)   在   oracle.sdpinternal.messaging.driver.smpp.SMPPManagedConnection.send(SMPPManagedConnection.java:95)   在   oracle.sdpinternal.messaging.driver.DriverConnectionImpl.send(DriverConnectionImpl.java:41)   在   oracle.sdpinternal.messaging.dispatcher.DriverDispatcherBean.onMessage(DriverDispatcherBean.java:296)   at sun.reflect.GeneratedMethodAccessor1629.invoke(Unknown Source)at   sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)   在java.lang.reflect.Method.invoke(Method.java:606)at   com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)   在   com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)   在   com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)   在   com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)   在   com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)   在   com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)   在   com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)   在   com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)   在   com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)   在com.sun.proxy。$ Proxy532.onMessage(未知来源)at   oracle.sdpinternal.messaging.dispatcher.DriverDispatcherBean_xfokw2_MDOImpl .__ WL_invoke(未知   来源)at   weblogic.ejb.container.internal.MDOMethodInvoker.invoke(MDOMethodInvoker.java:35)   在   oracle.sdpinternal.messaging.dispatcher.DriverDispatcherBean_xfokw2_MDOImpl.onMessage(未知   来源)at   oracle.sdpinternal.messaging.jmsmessagereceiver.ResourceAdapterImpl $ RaMessageListener.onMessage(ResourceAdapterImpl.java:167)   在   oracle.sdpinternal.messaging.jms.QueueWorker.run(QueueWorker.java:73)   在   weblogic.work.j2ee.J2EEWorkManager $ WorkWithListener.run(J2EEWorkManager.java:184)   在weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30)]]   [2017-10-17T10:33:16.807 + 05:30] [WLS_SOA] [通知] [SDP-26003]   [oracle.sdp.messaging.driver.dispatcher] [tid:Workmanager :,版本:   0,Scheduled = false,Started = false,等待时间:0 ms \ n] [userId:   OracleSystemUser] [ecid:   49d20b62a8084325:-5336381e:15f247fea2f:-8000-000000000001c322,0] [APP:   usermessagingdriver-smpp] Dispatcher发送了带有id的消息:   eb50c4cdc0a800ab12d5fbbdbbbbd46a。

1 个答案:

答案 0 :(得分:1)

我们找出并解决了这个问题。在这里发布其决议。也许它可以帮助别人,节省宝贵的时间。

在Oracle EM控制台中配置的SMPP驱动程序存在一个错误,即使您从驱动程序配置传递它,源地址和默认源地址也始终为空。

  

这是由于SMSC的多个源地址而我们的系统是   在源地址字段中传递空值。由于这个SMSC不是   能够识别正确的源地址并抛出“无效的来源”   地址"异常。

     

如果在SMSC配置了单/静态源地址,那么你可以   传递空值,SMSC将自动识别源地址。