Comment #22 on issue 3056 by [email protected]: Support SCTP in Mobicents
Diameter
http://code.google.com/p/mobicents/issues/detail?id=3056
The #19 is still an issue in Diameter 1.5. This is a snippet from one of
our cinfiguration files:
<?xml version="1.0"?>
<Configuration xmlns="http://www.jdiameter.org/jdiameter-client">
<LocalPeer>
<URI value="aaa://xxx.something.hu" />
<IPAddress value="10.55.66.77" />
<Realm value="ims.something.hu" />
<VendorID value="10415" />
<ProductName value="diametergw" />
<FirmwareRevision value="1" />
<Applications>
<ApplicationID>
<VendorId value="10415" />
<AuthApplId value="3" />
<AcctApplId value="3" />
</ApplicationID>
</Applications>
</LocalPeer>
<Parameters>
<QueueSize value="10000" />
<MessageTimeOut value="2000" />
<StopTimeOut value="10000" />
<CeaTimeOut value="2000" />
<IacTimeOut value="30000" />
<DwaTimeOut value="2000" />
<DpaTimeOut value="5000" />
<RecTimeOut value="10000" />
<Concurrent>
<Entity name="ThreadGroup" size="64"/>
<Entity name="ProcessingMessageTimer" size="1"/>
<Entity name="DuplicationMessageTimer" size="1"/>
<Entity name="RedirectMessageTimer" size="1"/>
<Entity name="PeerOverloadTimer" size="1"/>
<Entity name="ConnectionTimer" size="1"/>
<Entity name="StatisticTimer" size="1"/>
<Entity name="ApplicationSession" size="10"/>
</Concurrent>
<Dictionary enabled="true" sendLevel="ALL" receiveLevel="ALL"/>
</Parameters>
<Network>
<Peers>
<Peer name="aaa://link1.ccf.ims.something.hu:1200" ip="192.168.6.6"
rating="2" portRange="50000-50000"/>
<Peer name="aaa://link2.ccf.ims.something.hu:1201" ip="192.168.6.6"
rating="1" portRange="50001-50001"/>
</Peers>
<Realms>
<Realm name="ims.something.hu"
peers="link1.ccf.ims.something.hu,link2.ccf.ims.something.hu"
local_action="LOCAL" dynamic="false" exp_time="1">
<ApplicationID>
<VendorId value="10415" />
<AuthApplId value="3" />
<AcctApplId value="3" />
</ApplicationID>
</Realm>
</Realms>
</Network>
<Extensions>
<Connection
value="org.jdiameter.client.impl.transport.sctp.SCTPClientConnection" />
</Extensions>
</Configuration>
And the following error occurs runtime:
java.lang.ClassCastException: java.lang.String cannot be cast to
java.lang.Integer
at
org.jdiameter.client.impl.helpers.EmptyConfiguration.getIntValue(EmptyConfiguration.java:143)
~[jdiameter-impl-1.5.10.0-build639.jar:1.5.10.0-build639]
at
org.jdiameter.client.impl.fsm.PeerFSMImpl.<init>(PeerFSMImpl.java:110)
~[jdiameter-impl-1.5.10.0-build639.jar:1.5.10.0-build639]
at
org.jdiameter.client.impl.fsm.FsmFactoryImpl.createInstanceFsm(FsmFactoryImpl.java:49)
~[jdiameter-impl-1.5.10.0-build639.jar:1.5.10.0-build639]
at
org.jdiameter.client.impl.controller.PeerImpl.<init>(PeerImpl.java:267)
~[jdiameter-impl-1.5.10.0-build639.jar:1.5.10.0-build639]
at
org.jdiameter.client.impl.controller.PeerImpl.<init>(PeerImpl.java:243)
~[jdiameter-impl-1.5.10.0-build639.jar:1.5.10.0-build639]
at
org.jdiameter.client.impl.controller.PeerTableImpl.createPeer(PeerTableImpl.java:146)
[jdiameter-impl-1.5.10.0-build639.jar:1.5.10.0-build639]
at
org.jdiameter.client.impl.controller.PeerTableImpl.init(PeerTableImpl.java:126)
[jdiameter-impl-1.5.10.0-build639.jar:1.5.10.0-build639]
at
org.jdiameter.client.impl.controller.PeerTableImpl.<init>(PeerTableImpl.java:102)
[jdiameter-impl-1.5.10.0-build639.jar:1.5.10.0-build639]
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method) [na:1.7.0_13]
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
[na:1.7.0_13]
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
[na:1.7.0_13]
at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
[na:1.7.0_13]
at
org.picocontainer.injectors.AbstractInjector.newInstance(AbstractInjector.java:147)
[picocontainer-2.11-20100223.042317-1.jar:na]
at
org.picocontainer.injectors.ConstructorInjector$1.run(ConstructorInjector.java:319)
[picocontainer-2.11-20100223.042317-1.jar:na]
at
org.picocontainer.injectors.AbstractInjector$ThreadLocalCyclicDependencyGuard.observe(AbstractInjector.java:274)
[picocontainer-2.11-20100223.042317-1.jar:na]
at
org.picocontainer.injectors.ConstructorInjector.getComponentInstance(ConstructorInjector.java:341)
[picocontainer-2.11-20100223.042317-1.jar:na]
at
org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64)
[picocontainer-2.11-20100223.042317-1.jar:na]
at
org.picocontainer.behaviors.Stored.getComponentInstance(Stored.java:91)
[picocontainer-2.11-20100223.042317-1.jar:na]
at
org.picocontainer.DefaultPicoContainer.getInstance(DefaultPicoContainer.java:689)
[picocontainer-2.11-20100223.042317-1.jar:na]
at
org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:638)
[picocontainer-2.11-20100223.042317-1.jar:na]
at
org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:663)
[picocontainer-2.11-20100223.042317-1.jar:na]
at
org.jdiameter.client.impl.helpers.AssemblerImpl.getComponentInstance(AssemblerImpl.java:131)
[jdiameter-impl-1.5.10.0-build639.jar:1.5.10.0-build639]
at org.jdiameter.client.impl.StackImpl.init(StackImpl.java:144)
[jdiameter-impl-1.5.10.0-build639.jar:1.5.10.0-build639]
at hu.mt.diametergw.util.DiameterGWUtil.getConfiguredStacks(Unknown
Source) [diametergw.jar:na]
at hu.mt.diametergw.DiameterGW.initialize(Unknown Source)
[diametergw.jar:na]
at
hu.mt.diametergw.DiameterGWApplicationLifecycleListener.postStart(Unknown
Source) [diametergw.jar:na]
at
weblogic.application.internal.flow.BaseLifecycleFlow$PostStartAction.run(BaseLifecycleFlow.java:309)
[weblogic.jar:12.1.1.0]
at
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
[com.bea.core.weblogic.security.identity_2.0.0.0.jar:2.0.0.0]
at
weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
[com.bea.core.weblogic.security.wls_1.1.0.0_6-2-0-0.jar:6.2.0.0]
at
weblogic.application.utils.SecurityUtils$WLSSecurityProvider.invokePrivilegedAction(SecurityUtils.java:171)
[weblogic.jar:12.1.1.0]
at
weblogic.application.utils.SecurityUtils.invokePrivilegedAction(SecurityUtils.java:78)
[weblogic.jar:12.1.1.0]
at
weblogic.application.internal.flow.BaseLifecycleFlow$LifecycleListenerAction.invoke(BaseLifecycleFlow.java:200)
[weblogic.jar:12.1.1.0]
at
weblogic.application.internal.flow.BaseLifecycleFlow.postStart(BaseLifecycleFlow.java:67)
[weblogic.jar:12.1.1.0]
at
weblogic.application.internal.flow.TailLifecycleFlow.activate(TailLifecycleFlow.java:26)
[weblogic.jar:12.1.1.0]
at
weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:729)
[weblogic.jar:12.1.1.0]
at
weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:35)
[weblogic.jar:12.1.1.0]
at
weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:258)
[weblogic.jar:12.1.1.0]
at
weblogic.application.internal.EarDeployment.activate(EarDeployment.java:61)
[weblogic.jar:12.1.1.0]
at
weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:165)
[weblogic.jar:12.1.1.0]
at
weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
[weblogic.jar:12.1.1.0]
at
weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:192)
[weblogic.jar:12.1.1.0]
at
weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:369)
[weblogic.jar:12.1.1.0]
at
weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(DeploymentAdapter.java:51)
[weblogic.jar:12.1.1.0]
at
weblogic.management.deploy.internal.DeploymentAdapter.activate(DeploymentAdapter.java:200)
[weblogic.jar:12.1.1.0]
at
weblogic.management.deploy.internal.AppTransition$2.transitionApp(AppTransition.java:30)
[weblogic.jar:12.1.1.0]
at
weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:240)
[weblogic.jar:12.1.1.0]
at
weblogic.management.deploy.internal.ConfiguredDeployments.activate(ConfiguredDeployments.java:169)
[weblogic.jar:12.1.1.0]
at
weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:123)
[weblogic.jar:12.1.1.0]
at
weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:186)
[weblogic.jar:12.1.1.0]
at
weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:94)
[weblogic.jar:12.1.1.0]
at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
[weblogic.jar:12.1.1.0]
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
[com.bea.core.weblogic.workmanager_2.0.0.0.jar:2.0.0.0]
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
[com.bea.core.weblogic.workmanager_2.0.0.0.jar:2.0.0.0]
I can get rid of this if I remove the
<Connection
value="org.jdiameter.client.impl.transport.sctp.SCTPClientConnection" />
line from the configuration. But this is not exceptable for us because we
have to use SCTP instead of TCP.
--
---
You received this message because you are subscribed to the Google Groups "mobicents-all-issues-changes" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.