[sword-devel] Corba-bindings of sword

DM Smith dmsmith555 at yahoo.com
Mon Aug 18 07:39:21 MST 2008


Some choices for XPath:
Xalan
JDom
Jaxen
Java 1.5+

The trick with xalan and Java 1.4.2 is to replace Java's internal early 
version of xalan. This is not easy to do. Especially so in a tomcat 
scenario unless you have control of how tomcat starts up. See: 
http://xml.apache.org/xalan-j/faq.html#faq-N10122

Hope that helps,
    DM

Peter von Kaehne wrote:
> Thanks Troy,
>
> What does Perseus integration do? It sounds ominous as I want to set up a Persian website :-)
>
> During my search of the repositories I found some libraries which supposedly were designed to offer XPath functionality, but obviously none were found during make after me installing them. I did not alter the makefile to point at them specifically, but could obviously do so.
>
> Options I see are
>
> 1) You telling me that Perseus integration (whatever this is) is essentially irrelevant for me
> 2) Me getting Java 1.5 or Java 1.6 working - the server runs stupidly enough Ubuntu 6.06 instead of Debian Etch which was also a choice offered to me - I can not undo this apparently though I could try and do a dirty "upgrade" - which might or might not work out. Or maybe Java 1.5 will run perfectly fine on Ubuntu 6.06. Will figure out.
> 3) Me getting the Makefile to see my additional libraries - if they offer what you need.
>
> Thanks!
>
> Peter
>
>
>
> -------- Original-Nachricht --------
>   
>> Datum: Mon, 18 Aug 2008 14:29:42 +0100
>> Von: "Troy A. Griffitts" <scribe at crosswire.org>
>> An: SWORD Developers\' Collaboration Forum <sword-devel at crosswire.org>
>> Betreff: Re: [sword-devel] Corba-bindings of sword
>>     
>
>   
>> Peter,
>>
>> Doing a quick google, it looks like, from here:
>>
>> http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/xpath/XPathFactory.html
>>
>> These classes were added to the base java runtime in verse 1.5.  If I 
>> remember correctly, you are using 1.4?  Those classes are only necessary 
>> for the Perseus integration.  We can make an alternate build target 
>> which bypasses those if you need to support java 1.4.
>>
>> 	-Troy.
>>
>>
>>
>> Peter von Kaehne wrote:
>>     
>>> correcting a link to greekconverter.jar removed 5 errors.
>>>
>>> My remaining 10 errors are all XPATH related AFAICS.
>>>
>>> Peter
>>>
>>> -------- Original-Nachricht --------
>>>       
>>>> Datum: Mon, 18 Aug 2008 09:54:12 +0200
>>>> Von: "Peter von Kaehne" <refdoc at gmx.net>
>>>> An: SWORD Developers\' Collaboration Forum <sword-devel at crosswire.org>
>>>> Betreff: Re: [sword-devel] Corba-bindings of sword
>>>>         
>>>> Installing libxalan2-java did nothing to solve the problem.
>>>>
>>>> Any relevant Makefile adjustments or should I use a different XPath
>>>> implementation?
>>>>
>>>> Thanks!
>>>>
>>>> -------- Original-Nachricht --------
>>>>         
>>>>> Datum: Mon, 18 Aug 2008 09:43:26 +0200
>>>>> Von: "Peter von Kaehne" <refdoc at gmx.net>
>>>>> An: SWORD Developers\' Collaboration Forum <sword-devel at crosswire.org>
>>>>> Betreff: Re: [sword-devel] Corba-bindings of sword
>>>>> Muehsam naehrt sich das Eichhoernchen...
>>>>>
>>>>> Having corrected my makefile I am now getting the ewrror messages
>>>>>           
>>>> attached
>>>>         
>>>>> below. It seems that Swordweb relies on XPath libraries and on some
>>>>> unicode related ones which i have not yet figured.
>>>>>
>>>>> I guess this should also be in the webpage.
>>>>>
>>>>> Thansk again Troy for your help!
>>>>>
>>>>> ./swordweb/PerseusUtils.java:3: package javax.xml.xpath does not exist
>>>>> import javax.xml.xpath.XPath;
>>>>>                        ^
>>>>> ./swordweb/PerseusUtils.java:4: package javax.xml.xpath does not exist
>>>>> import javax.xml.xpath.XPathFactory;
>>>>>                        ^
>>>>> ./swordweb/PerseusUtils.java:7: package javax.xml.xpath does not exist
>>>>> import javax.xml.xpath.XPathConstants;
>>>>>                        ^
>>>>> ./swordweb/PerseusUtils.java:8: package
>>>>> com.sun.org.apache.xml.internal.dtm.ref does not exist
>>>>> import com.sun.org.apache.xml.internal.dtm.ref.DTMNodeList;
>>>>>                                                ^
>>>>> ./swordweb/PerseusUtils.java:14: package greekconverter does not exist
>>>>> import greekconverter.UnicodeToBetacode;
>>>>>                       ^
>>>>> ./swordweb/PerseusUtils.java:15: package greekconverter does not exist
>>>>> import greekconverter.BetacodeToUnicode;
>>>>>                       ^
>>>>> ./swordweb/PerseusUtils.java:19: cannot resolve symbol
>>>>> symbol  : class UnicodeToBetacode 
>>>>> location: class org.crosswire.swordweb.PerseusUtils
>>>>>         UnicodeToBetacode bc = new UnicodeToBetacode();
>>>>>         ^
>>>>> ./swordweb/PerseusUtils.java:19: cannot resolve symbol
>>>>> symbol  : class UnicodeToBetacode 
>>>>> location: class org.crosswire.swordweb.PerseusUtils
>>>>>         UnicodeToBetacode bc = new UnicodeToBetacode();
>>>>>                                    ^
>>>>> ./swordweb/PerseusUtils.java:21: cannot resolve symbol
>>>>> symbol  : class XPath 
>>>>> location: class org.crosswire.swordweb.PerseusUtils
>>>>>         XPath xpath = XPathFactory.newInstance().newXPath();
>>>>>         ^
>>>>> ./swordweb/PerseusUtils.java:21: cannot resolve symbol
>>>>> symbol  : variable XPathFactory 
>>>>> location: class org.crosswire.swordweb.PerseusUtils
>>>>>         XPath xpath = XPathFactory.newInstance().newXPath();
>>>>>                       ^
>>>>> ./swordweb/PerseusUtils.java:40: cannot resolve symbol
>>>>> symbol  : class DTMNodeList 
>>>>> location: class org.crosswire.swordweb.PerseusUtils
>>>>>                 DTMNodeList nodes =
>>>>> (DTMNodeList)xpath.evaluate(expression, inputSource,
>>>>>           
>>>> XPathConstants.NODESET);
>>>>         
>>>>>                 ^
>>>>> ./swordweb/PerseusUtils.java:40: cannot resolve symbol
>>>>> symbol  : class DTMNodeList 
>>>>> location: class org.crosswire.swordweb.PerseusUtils
>>>>>                 DTMNodeList nodes =
>>>>> (DTMNodeList)xpath.evaluate(expression, inputSource,
>>>>>           
>>>> XPathConstants.NODESET);
>>>>         
>>>>>                                      ^
>>>>> ./swordweb/PerseusUtils.java:40: cannot resolve symbol
>>>>> symbol  : variable XPathConstants 
>>>>> location: class org.crosswire.swordweb.PerseusUtils
>>>>>                 DTMNodeList nodes =
>>>>> (DTMNodeList)xpath.evaluate(expression, inputSource,
>>>>>           
>>>> XPathConstants.NODESET);
>>>>         
>>>>>                                                                       
>>>>>           
>>  
>>     
>>>>  
>>>>         
>>>>>               ^
>>>>> ./swordweb/PerseusUtils.java:132: cannot resolve symbol
>>>>> symbol  : class BetacodeToUnicode 
>>>>> location: class org.crosswire.swordweb.PerseusUtils
>>>>>               txt = (new BetacodeToUnicode().convertString(txt));
>>>>>                          ^
>>>>> ./swordweb/RangeInformation.java:11: cannot resolve symbol
>>>>> symbol  : method contains (java.lang.String)
>>>>> location: class java.lang.String
>>>>>         if (keyInChapter.contains(":")) {
>>>>>                         ^
>>>>> Note: ./swordweb/PerseusUtils.java uses or overrides a deprecated API.
>>>>> Note: Recompile with -deprecation for details.
>>>>> 15 errors
>>>>> make: ***
>>>>>
>>>>>           
>> [/usr/share/tomcat5/ROOT/classes/org/crosswire/swordweb/PerseusUtils.class] Error 1
>>     
>>>>>
>>>>>
>>>>> -------- Original-Nachricht --------
>>>>>           
>>>>>> Datum: Sun, 17 Aug 2008 23:00:43 +0100
>>>>>> Von: "Troy A. Griffitts" <scribe at crosswire.org>
>>>>>> An: SWORD Developers\' Collaboration Forum
>>>>>>             
>> <sword-devel at crosswire.org>
>>     
>>>>>> Betreff: Re: [sword-devel] Corba-bindings of sword
>>>>>> Thanks for pressing on Peter, and for giving your feedback as you go.
>>>>>> I've updated the swordweb page to include the step of compiling the 
>>>>>> 'src' directory.  Great feedback from a firsthand firsttime
>>>>>>             
>> installer!
>>     
>>>>>> 	-Troy.
>>>>>>
>>>>>>
>>>>>>
>>>>>> Peter von Kaehne wrote:
>>>>>>             
>>>>>>> Per aspera ad astra.....
>>>>>>>
>>>>>>> I guess the java files in swordweb/source need also compiling (the
>>>>>>>               
>>>> web
>>>>         
>>>>>> page on Swordweb does not mention this) before things will work?
>>>>>>             
>>>>>>> Peter
>>>>>>>
>>>>>>> -------- Original-Nachricht --------
>>>>>>>               
>>>>>>>> Datum: Thu, 14 Aug 2008 15:35:14 +0100
>>>>>>>> Von: "Troy A. Griffitts" <scribe at crosswire.org>
>>>>>>>> An: SWORD Developers\' Collaboration Forum
>>>>>>>>                 
>>>>> <sword-devel at crosswire.org>
>>>>>           
>>>>>>>> Betreff: Re: [sword-devel] Corba-bindings of sword
>>>>>>>> Peter,
>>>>>>>>
>>>>>>>> Yes, Jonathan is correct.  Have a look at the java Makefile and
>>>>>>>>                 
>>>> there
>>>>         
>>>>>> is 
>>>>>>             
>>>>>>>> a place to set your path for tomcat so it can find those extra jar
>>>>>>>>                 
>>>>>> files.
>>>>>>             
>>>>>>>> 	-Troy.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Jonathan Morgan wrote:
>>>>>>>>                 
>>>>>>>>> On Fri, Aug 15, 2008 at 12:03 AM, Peter von Kaehne
>>>>>>>>>                   
>>>> <refdoc at gmx.net>
>>>>         
>>>>>>>> wrote:
>>>>>>>>                 
>>>>>>>>>> Thanks to everyone - this worked.
>>>>>>>>>>
>>>>>>>>>> Now the next problem.
>>>>>>>>>>
>>>>>>>>>> Making /sword/bindings/corba/java fails with 12 exceptions which
>>>>>>>>>>                     
>>>>> look
>>>>>           
>>>>>>>> like the following:
>>>>>>>>                 
>>>>>>>>>> src/org/crosswire/sword/orb/SwordOrb.java:214: cannot resolve
>>>>>>>>>>                     
>>>>> symbol
>>>>>           
>>>>>>>>>> symbol  : class HttpServletRequest
>>>>>>>>>> location: class org.crosswire.sword.orb.SwordOrb
>>>>>>>>>>        public static SWMgr getSWMgrInstance(HttpServletRequest
>>>>>>>>>>                     
>>>>>> request)
>>>>>>             
>>>>>>>> throws Exception {
>>>>>>>>                 
>>>>>>>>>>                                 ^
>>>>>>>>>> src/org/crosswire/sword/orb/SwordOrb.java:185: cannot resolve
>>>>>>>>>>                     
>>>>> symbol
>>>>>           
>>>>>>>>>> symbol  : class HttpSession
>>>>>>>>>> location: class org.crosswire.sword.orb.SwordOrb
>>>>>>>>>>                HttpSession session = request.getSession();
>>>>>>>>>>                ^
>>>>>>>>>>
>>>>>>>>>> I have java 1.4 SDK from the Ubuntu repositories.
>>>>>>>>>>                     
>>>>>>>>> I ran into similar problems a few days ago on a different project.
>>>>>>>>> All of those classes are servlet style classes, from the Java
>>>>>>>>>                   
>>>>> servlet
>>>>>           
>>>>>>>>> API (javax.servlet.*).  These are not ever shipped with the Java
>>>>>>>>>                   
>>>>> SDK,
>>>>>           
>>>>>>>>> AFAIK.  If you want to get them, I think you need to add the
>>>>>>>>> servlet-api.jar file from a servlet container (if going that
>>>>>>>>>                   
>>>> route,
>>>>         
>>>>> I
>>>>>           
>>>>>>>>> would tend to use Tomcat, but Jetty is another good option).
>>>>>>>>>
>>>>>>>>> Hope that helps.
>>>>>>>>>
>>>>>>>>> Jon





More information about the sword-devel mailing list