Douglas,
Thank you! I was able to install it. But the configuration option you gave
me cause a failure. Here is the error message I got:
-----------------------------
Alarm Text: Process 'SipXbridge' failed its configuration test.
org.xml.sax.SAXParseException; systemId:
file:///etc/sipxpbx/sipxbridge.xml;
lineNumber: 25; columnNumber: 83; Error at line 25 char 83: No such
accessible method: setStrictProtocolEnforcement() on object:
org.sipfoundry.sipxbridge.BridgeConfiguration
at org.apache.commons.digester.Digester.createSAXException(
Digester.java:3181)
at org.apache.commons.digester.Digester.createSAXException(
Digester.java:3207)
at org.apache.commons.digester.Digester.endElement(Digester.
java:1225)
at com.sun.org.apache.xerces.internal.parsers.
AbstractSAXParser.endElement(AbstractSAXParser.java:604)
at com.sun.org.apache.xerces.internal.impl.
XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl
.java:1759)
at com.sun.org.apache.xerces.internal.impl.
XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(
XMLDocumentFragmentScannerImpl.java:2915)
at com.sun.org.apache.xerces.internal.impl.
XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:625)
at com.sun.org.apache.xerces.internal.impl.
XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl
.java:488)
at com.sun.org.apache.xerces.internal.parsers.
XML11Configuration.parse(XML11Configuration.java:812)
at com.sun.org.apache.xerces.internal.parsers.
XML11Configuration.parse(XML11Configuration.java:741)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.
parse(XMLParser.java:123)
at com.sun.org.apache.xerces.internal.parsers.
AbstractSAXParser.parse(AbstractSAXParser.java:1208)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$
JAXPSAXParser.parse(SAXParserImpl.java:525)
at org.apache.commons.digester.Digester.parse(Digester.java:1745)
at org.sipfoundry.sipxbridge.ConfigurationParser.
createAccountManager(ConfigurationParser.java:321)
at org.sipfoundry.sipxbridge.Gateway.parseConfigurationFile(
Gateway.java:244)
at org.sipfoundry.sipxbridge.Gateway.main(Gateway.java:1414)
Caused by: java.lang.NoSuchMethodException: No such accessible
method: setStrictProtocolEnforcement() on object: org.sipfoundry.sipxbridge.
BridgeConfiguration
at org.apache.commons.beanutils.MethodUtils.invokeMethod(
MethodUtils.java:278)
at org.apache.commons.digester.CallMethodRule.end(
CallMethodRule.java:626)
at org.apache.commons.digester.Rule.end(Rule.java:253)
at org.apache.commons.digester.Digester.endElement(Digester.
java:1222)
... 14 more
SipXbridge : Exception caught while running
log4j:WARN No appenders could be found for logger
(org.sipfoundry.sipxbridge).
log4j:WARN Please initialize the log4j system properly.
org.sipfoundry.sipxbridge.SipXbridgeException: Initialization
exception
at org.sipfoundry.sipxbridge.ConfigurationParser.
createAccountManager(ConfigurationParser.java:338)
at org.sipfoundry.sipxbridge.Gateway.parseConfigurationFile(
Gateway.java:244)
at org.sipfoundry.sipxbridge.Gateway.main(Gateway.java:1414)
Caused by: org.xml.sax.SAXParseException; systemId:
file:///etc/sipxpbx/sipxbridge.xml; lineNumber: 25; columnNumber: 83; Error
at line 25 char 83: No such accessible method:
setStrictProtocolEnforcement() on object: org.sipfoundry.sipxbridge.
BridgeConfiguration
at org.apache.commons.digester.Digester.createSAXException(
Digester.java:3181)
at org.apache.commons.digester.Digester.createSAXException(
Digester.java:3207)
at org.apache.commons.digester.Digester.endElement(Digester.
java:1225)
at com.sun.org.apache.xerces.internal.parsers.
AbstractSAXParser.endElement(AbstractSAXParser.java:604)
at com.sun.org.apache.xerces.internal.impl.
XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl
.java:1759)
at com.sun.org.apache.xerces.internal.impl.
XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(
XMLDocumentFragmentScannerImpl.java:2915)
at com.sun.org.apache.xerces.internal.impl.
XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:625)
at com.sun.org.apache.xerces.internal.impl.
XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl
.java:488)
at com.sun.org.apache.xerces.internal.parsers.
XML11Configuration.parse(XML11Configuration.java:812)
at com.sun.org.apache.xerces.internal.parsers.
XML11Configuration.parse(XML11Configuration.java:741)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.
parse(XMLParser.java:123)
at com.sun.org.apache.xerces.internal.parsers.
AbstractSAXParser.parse(AbstractSAXParser.java:1208)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$
JAXPSAXParser.parse(SAXParserImpl.java:525)
at org.apache.commons.digester.Digester.parse(Digester.java:1745)
at org.sipfoundry.sipxbridge.ConfigurationParser.
createAccountManager(ConfigurationParser.java:321)
... 2 more
Caused by: java.lang.NoSuchMethodException: No such accessible
method: setStrictProtocolEnforcement() on object: org.sipfoundry.sipxbridge.
BridgeConfiguration
at org.apache.commons.beanutils.MethodUtils.invokeMethod(
MethodUtils.java:278)
at org.apache.commons.digester.CallMethodRule.end(
CallMethodRule.java:626)
at org.apache.commons.digester.Rule.end(Rule.java:253)
at org.apache.commons.digester.Digester.endElement(Digester.
java:1222)
... 14 more
Suggested Resolution: Check recent configuration changes. Do not hand-edit
configuration files. Check logs for more details.
-----------------------
Maybe there are other RPMs that need to be installed as well? If so, how
can I get those?
On Wed, Feb 8, 2012 at 9:08 PM, Douglas Hubler <[email protected]> wrote:
> On Wed, Feb 8, 2012 at 6:37 PM, W. E. W. Russell <[email protected]>
> wrote:
> > Douglas,
> >
> > Thank you for the RPM, but you sent the 64 bit version. Could you send
> the
> > 32-bit one? Thank you!
>
>
> http://download.sipfoundry.org/pub/temp/sipxbridge-4.4.0-358.gef825.i386.rpm
>
> >
> >
> > On Wed, Feb 8, 2012 at 6:32 PM, Douglas Hubler <[email protected]>
> wrote:
> >>
> >>
> >>
> http://download.sipfoundry.org/pub/temp/sipxbridge-4.4.0-358.gef825.x86_64.rpm
> >>
> >> /etc/sipxpbx/sipxbridge.xml
> >>
> >> needs
> >>
> >>
> >>
>
> <enable-strict-protocol-enforcement>false</enable-strict-protocol-enforcement>
> >>
> >>
> >> On Wed, Feb 8, 2012 at 4:56 PM, Douglas Hubler <[email protected]>
> wrote:
> >> > SVN is older code than git, so when you see a difference in the form
> >> > of additional code, then chances are the code was added not removed.
> >> > Git is the master copy of all code from 4.0 to 4.6, so RPMs from from
> >> > what is in git if ever there is a doubt.
> >> >
> >> >
> >> > Here's my research
> >> > Step 1.) use git blame to find when the code was added
> >> > git blame
> >> >
> sipXbridge/src/main/java/org/sipfoundry/sipxbridge/CallControlManager.java
> >> > ^441acc4 (mardy 2010-04-13 12:17:38 +0000 2287)
> >> > BackToBackUserAgent b2bua =
> >> > dialogContext.getBackToBackUserAgent();b1b875e1 (mranga
> >> > 2010-06-23 20:46:10 +0000 2288) if (
> >> > Gateway.isStrictProtocolEnforcement() ) {b1b875e1 (mranga
> >> > 2010-06-23 20:46:10 +0000 2289) if (
> >> > response.getContentLength().getContentLength() == 0 ) {b1b875e1
> >> > (mranga 2010-06-23 20:46:10 +0000 2290)
> >> > logger.error("PROTOCOL ERROR -- Expecting a content length != 0.
> >> > Tearing down cab1b875e1 (mranga 2010-06-23 20:46:10 +0000 2291)
> >> > dialogContext.sendAck(response);b1b875e1 (mranga
> >> > 2010-06-23 20:46:10 +0000 2292)
> >> > b2bua.tearDown(Gateway.SIPXBRIDGE_USER,
> >> > ReasonCode.PROTOCOL_ERROR,b1b875e1 (mranga 2010-06-23 20:46:10
> >> > +0000 2293) "protocol error - SDP solicitation
> >> > response with 0 length SDP.");b1b875e1 (mranga 2010-06-23
> >> > 20:46:10 +0000 2294) return;b1b875e1 (mranga
> >> > 2010-06-23 20:46:10 +0000 2295) }b1b875e1 (mranga
> >> > 2010-06-23 20:46:10 +0000 2296) }
> >> >
> >> > Step 2.) With the git sha1 code, find the commit comment
> >> > git show b1b875e1
> >> > commit b1b875e180941e794499b336f2fe31cb23e9ba23Author: mranga
> >> > <mranga@ab1d8caa-1f67-47f1-9e81-24633a41865c>Date: Wed Jun 23
> >> > 20:46:10 2010 +0000
> >> > XX-8599: SipXbridge: load testing and memory profiling fixes.
> >> > Include Strict protocol compliance flag. The following improvements
> >> > have been made: - Release memory references early to reduce memory
> >> > requirements. - Fixed a leak under error conditions. - Load
> >> > tested and make sure there are no leaks under continous operation.
> >> > - Add a flag for SIP protocol compliance ( on by default ).
> >> > git-svn-id:
> http://sipxecs.sipfoundry.org/rep/sipXecs/branches/4.2@18964
> >> > ab1d8caa-1f67-47f1-9e81-24633a41865c
> >> >
> >> > Step 3.) Check for more description in the tracker (although in this
> >> > case not much info)
> >> > http://track.sipfoundry.org/browse/XX-8599
> >> >
> >> > Step 4.) Come to the conclusion the check in not nec. wrong, just that
> >> > you want to disable this check. Turns out there was never a way added
> >> > to disable in in config parser so I studies the code and made the
> >> > following change.
> >> >
> >> > diff --git a/sipXbridge/schema/sipxbridge.xsd
> >> > b/sipXbridge/schema/sipxbridge.xsdindex 5649fb8..2e96c09 100644---
> >> > a/sipXbridge/schema/sipxbridge.xsd+++
> >> > b/sipXbridge/schema/sipxbridge.xsd@@ -100,6 +100,14 @@
> >> > </xs:documentation>
> >> > </xs:annotation> </xs:element>+
> >> > <xs:element name="enable-strict-protocol-enforcement"
> >> > type="xs:boolean"+ maxOccurs="1"
> >> > minOccurs="0" default="true">+
> >> > <xs:annotation>+
> >> > <xs:documentation xml:lang="en">+
> >> > Whether or not bridge is strict about protocol enforcement+
> >> > </xs:documentation>+
> >> > </xs:annotation>+ </xs:element>
> >> > <xs:element name="sipx-proxy-domain"
> >> > type="xs:string" minOccurs="1"
> >> > maxOccurs="1"> <xs:annotation>diff
> >> > --git
> >> >
> a/sipXbridge/src/main/java/org/sipfoundry/sipxbridge/ConfigurationParser.java
> >> > b/sipXbridge/src/main/java/org/sipfoundry/sipxbridge/Configuratindex
> >> > d73da9f..1ff640b 100644---
> >> >
> >> >
> a/sipXbridge/src/main/java/org/sipfoundry/sipxbridge/ConfigurationParser.java+++
> >> >
> >> >
> b/sipXbridge/src/main/java/org/sipfoundry/sipxbridge/ConfigurationParser.java@
> @
> >> > -140,6 +140,9 @@ public class ConfigurationParser {
> >> > digester.addCallMethod(String.format("%s/%s", BRIDGE_CONFIG,
> >> > "enable-bridge-proxy-relay"),
> >> > "setEnableBridgeProxyRelay",0, new Class[] { Boolean.class }); +
> >> > digester.addCallMethod(String.format("%s/%s", BRIDGE_CONFIG,
> >> > "enable-strict-protocol-enforcement"),+
> >> > "setStrictProtocolEnforcement",0, new Class[] { Boolean.class });+
> >> > /* * ITSP configuration support parameters. */
> >> >
> >> > Step 5.) Build and test rpms. So yes, you'll need to follow
> >> > instructions for building rpms on wiki. However, If you tell me your
> >> > distro, I can email you an rpm and if you acknowledge it's working
> >> > i'll include fix in next build.
> >> >
> >> > On Wed, Feb 8, 2012 at 3:51 PM, W. E. W. Russell <
> [email protected]>
> >> > wrote:
> >> >> I just had a question about getting the latest code complied and
> >> >> released in
> >> >> the RPMs.
> >> >>
> >> >> I have been having trouble being able to put calls on hold or
> >> >> transferring
> >> >> them. I've located the issue in the code. The issue seems to be that
> >> >> the
> >> >> latest code isn't being complied into the latest stable RPMs.
> >> >>
> >> >> The two versions are below:
> >> >> The old code is
> >> >>
> >> >> here:
> https://github.com/dhubler/sipxecs/blob/release-4.4/sipXbridge/src/main/java/org/sipfoundry/sipxbridge/CallControlManager.java
> >> >>
> >> >> The new code is
> >> >>
> >> >> here:
> http://sipxecs.sipfoundry.org/rep/sipXecs/main/sipXbridge/src/main/java/org/sipfoundry/sipxbridge/CallControlManager.java
> >> >>
> >> >> The main difference that is causing my issue is in the
> >> >> method: solicitSdpOfferFromPeerDialogResponse
> >> >>
> >> >> It begins on line 2247 on the GIT site version. You'll have to just
> do
> >> >> a
> >> >> simple search on the other site to find it, but the key issue is that
> >> >> the
> >> >> following check was removed:
> >> >> ----------------------------------------------------------------
> >> >>
> >> >> if ( Gateway.isStrictProtocolEnforcement() ) {
> >> >>
> >> >>
> >> >> if ( response.getContentLength().getContentLength() == 0
> )
> >> >> {
> >> >>
> >> >>
> >> >> logger.error("PROTOCOL ERROR -- Expecting a content
> >> >> length
> >> >> != 0. Tearing down call! ");
> >> >>
> >> >>
> >> >> dialogContext.sendAck(response);
> >> >>
> >> >>
> >> >> b2bua.tearDown(Gateway.SIPXBRIDGE_USER,
> >> >> ReasonCode.PROTOCOL_ERROR,
> >> >>
> >> >>
> >> >> "protocol error - SDP solicitation response with 0
> >> >> length
> >> >> SDP.");
> >> >>
> >> >>
> >> >> return;
> >> >>
> >> >>
> >> >> }
> >> >> ----------------------------------------------------------------
> >> >>
> >> >> I can confirm this is the issue because the error I get when the call
> >> >> is
> >> >> dropped is exactly: "protocol error - SDP solicitation response with
> 0
> >> >> length SDP."
> >> >>
> >> >>
> >> >> The question I have is how can I get an RPM built with this code for
> >> >> 32-bit
> >> >> CentOS 5. Do I have to create my own build environment or is it
> >> >> available?
> >> >>
> >> >>
> >> >> Thanks in advance.
> >> >>
> >> >>
> >> >> Best Regards,
> >> >>
> >> >> William
> >> >>
> >> >> --
> >> >> W. E. W. Russell
> >> >> Director, Systems Intergration at incNETWORKS, Inc.
> >> >> Work Phone # 732-508-2224
> >> >>
> >> >> Active Alumni member of Sigma Lambda Beta International Fraternity,
> >> >> Inc.
> >> >> Cell Phone # 732-744-6483
> >> >>
> >> >>
> >> >>
> >> >> _______________________________________________
> >> >> sipx-dev mailing list
> >> >> [email protected]
> >> >> List Archive: http://list.sipfoundry.org/archive/sipx-dev/
> >> >
> >> >
> >> >
> >> > --
> >> > Join me to talk about sipXecs and the upcoming version 4.6 at
> >> > CoLab @ CSU March (5th & 6th).
> >> > http://www.sipfoundry.org/sipx-colab
> >> > Hack with me on at the CoLab Hackfest.
> >> > http://wiki.sipfoundry.org/display/sipXecs/2012+sipX-CoLab+Hackfest
> >>
> >>
> >>
> >> --
> >> Join me to talk about sipXecs and the upcoming version 4.6 at
> >> CoLab @ CSU March (5th & 6th).
> >> http://www.sipfoundry.org/sipx-colab
> >> Hack with me on at the CoLab Hackfest.
> >> http://wiki.sipfoundry.org/display/sipXecs/2012+sipX-CoLab+Hackfest
> >> _______________________________________________
> >> sipx-dev mailing list
> >> [email protected]
> >> List Archive: http://list.sipfoundry.org/archive/sipx-dev/
> >
> >
> >
> >
> > --
> > W. E. W. Russell
> > Director, Systems Intergration at incNETWORKS, Inc.
> > Work Phone # 732-508-2224
> >
> > Active Alumni member of Sigma Lambda Beta International Fraternity, Inc.
> > Cell Phone # 732-744-6483
> >
> >
> >
> > _______________________________________________
> > sipx-dev mailing list
> > [email protected]
> > List Archive: http://list.sipfoundry.org/archive/sipx-dev/
>
>
>
> --
> Join me to talk about sipXecs and the upcoming version 4.6 at
> CoLab @ CSU March (5th & 6th).
> http://www.sipfoundry.org/sipx-colab
> Hack with me on at the CoLab Hackfest.
> http://wiki.sipfoundry.org/display/sipXecs/2012+sipX-CoLab+Hackfest
> _______________________________________________
> sipx-dev mailing list
> [email protected]
> List Archive: http://list.sipfoundry.org/archive/sipx-dev/
>
--
W. E. W. Russell
Director, Systems Intergration at incNETWORKS, Inc.
Work Phone # 732-508-2224
Active Alumni member of Sigma Lambda Beta International Fraternity, Inc.
Cell Phone # 732-744-6483
_______________________________________________
sipx-dev mailing list
[email protected]
List Archive: http://list.sipfoundry.org/archive/sipx-dev/