描述:
- 我们正在使用部署在 SOA 服务器上的 sdpmessagingdriver-smpp 驱动程序来发送 SMS 消息。
- 我们已经使用“发件人地址”和“默认发件人地址”配置了 SMPP 驱动程序属性。
- 当我们尝试发送 SMS 时,它会失败并显示错误消息“Invalid Source Address”。
经过一番调查,我们发现 submit_sm 请求中的 Sender Address 为空,这导致了问题"Invalid Source Address"。现在出现的问题是,为什么在 SMPP 驱动程序配置设置中已经配置了发送者地址在提交请求中是空白的?我们是否需要在其他地方配置发件人地址?是否有任何配置文件来配置此设置?
参考截图:
SMPP 驱动程序特定配置:
- 您可以看到配置中提供了发件人地址和默认发件人地址。
消息状态(短信失败日志):
- 下面提供的屏幕截图显示了发件人地址为空白的失败 SMS 消息。
后端错误日志:
[2017-10-17T10:33:16.806+05:30] [WLS_SOA] [错误] [SDP-25700] [oracle.sdp.messaging.driver.smpp] [tid: Workmanager: , Version: 0, Scheduled=false , Started=false, Wait time: 0 ms\n] [userId: OracleSystemUser] [ecid: 49d20b62a8084325:-5336381e:15f247fea2f:-8000-000000000001c322,0] [APP: usermessagingdriver-smpp] 捕获到意外异常。 [[ oracle.sdp.messaging.driver.DriverException:在 oracle.sdpinternal.messaging.driver.smpp.SMPPDriver.send(SMPPDriver.java:1073) 的 oracle.sdpinternal.messaging.driver.smpp.SMPPDriver 的源地址 [a] 无效。在 oracle.sdpinternal.messaging.driver.smpp.SMPPDriver.send (SMPPDriver.java:2724) 在 oracle.sdpinternal.messaging.driver.smpp.SMPPDriver.send(SMPPDriver.java:2849) 发送(SMPPDriver.java:3268)在 oracle.sdpinternal.messaging.driver.smpp.SMPPManagedConnection。在 oracle.sdpinternal.messaging.dispatcher.DriverDispatcherBean.onMessage(DriverDispatcherBean.java:296) 在 sun.reflect 的 oracle.sdpinternal.messaging.driver.DriverConnectionImpl.send(DriverConnectionImpl.java:41) 发送(SMPPManagedConnection.java:95) .GeneratedMethodAccessor1629.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at 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(Unknown Source) at oracle.sdpinternal.messaging.dispatcher.DriverDispatcherBean_xfokw2_MDOImpl.__WL_invoke(Unknown Source) at weblogic.ejb.container.internal.MDOMethodInvoker.invoke(MDOMethodInvoker.java:35) at oracle.sdpinternal.messaging.dispatcher.DriverDispatcherBean_xfokw2_MDOI .onMessage(Unknown Source) 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, Wait time: 0 ms\n] [userId: OracleSystemUser] [ecid: 49d20b62a8084325:-5336381e:15f247fea2f:-8000-000000000001c322,0] [APP: usermessagingdriver-smpp] Dispatcher 发送的消息带有 id :eb50c4cdc0a800ab12d5fbbdbbbbd46a。