Improve output: distinguish between failed assertions (failures) and unexpected exceptions (errors), and print a filtered stack trace for any exception.
This commit is contained in:
commit
4f2e303079
1839 changed files with 235630 additions and 0 deletions
19
config/ant/importedBuild.xml
Normal file
19
config/ant/importedBuild.xml
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
|
<!-- <!DOCTYPE project PUBLIC "-//ANT//DTD project//EN" "ant16.dtd" > this doesn't seem to work well. -->
|
||||||
|
|
||||||
|
<project name="imported-build" basedir="../../">
|
||||||
|
|
||||||
|
<!-- add the ant contrib tasks
|
||||||
|
see http://ant-contrib.sourceforge.net/ant-contrib/manual/tasks/index.html -->
|
||||||
|
<taskdef resource="net/sf/antcontrib/antcontrib.properties">
|
||||||
|
<classpath>
|
||||||
|
<fileset dir="${ant.lib}">
|
||||||
|
<include name="**/*.jar"/>
|
||||||
|
</fileset>
|
||||||
|
</classpath>
|
||||||
|
</taskdef>
|
||||||
|
|
||||||
|
|
||||||
|
</project>
|
||||||
|
|
BIN
config/ant/lib/ant-contrib-1.0b2.jar
Normal file
BIN
config/ant/lib/ant-contrib-1.0b2.jar
Normal file
Binary file not shown.
49
config/example.globalbuild.properties
Normal file
49
config/example.globalbuild.properties
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
# these are ant build properties that all of the vitro and build.xml files might need.
|
||||||
|
#
|
||||||
|
# All of these paths must be absolute or relative to the vitro directory. Relative
|
||||||
|
# is preferred.
|
||||||
|
|
||||||
|
# Notice that the use of relative paths is facilitated by the basedir attribute of the
|
||||||
|
# ant project elements. All projects should use the same base directory so that the
|
||||||
|
# relative paths will point to the correct files.
|
||||||
|
# See the ant documentation for project element basedir attribute.
|
||||||
|
|
||||||
|
############## basic configuration ###############
|
||||||
|
java_api=/usr/local/java/java_home
|
||||||
|
|
||||||
|
############ tomcat stuff ####################
|
||||||
|
tomcat.home=/usr/local/tomcat
|
||||||
|
|
||||||
|
############# source directory #########################################
|
||||||
|
##### This parameter is used for referencing a "permanent" home #######
|
||||||
|
##### in the source directory of the project for uploaded files #######
|
||||||
|
##### so that if the Tomcat webapp context is wiped out, any #######
|
||||||
|
##### uploaded files (usually images) are not lost. #######
|
||||||
|
########################################################################
|
||||||
|
source.home=/usr/local/src/Vitro
|
||||||
|
|
||||||
|
########################################################################
|
||||||
|
##### Everything under this is used by the Vitro build.xml files #######
|
||||||
|
##### You should not need to customize it for you local install #######
|
||||||
|
########################################################################
|
||||||
|
|
||||||
|
########### ant contrib tasks ###############
|
||||||
|
ant.lib=./config/ant/lib
|
||||||
|
ant.contrib.jar=${ant.lib}/ant-contrib-1.0b2.jar
|
||||||
|
|
||||||
|
#### locations of files in the build #####
|
||||||
|
webapp.dir=./webapp
|
||||||
|
webapp.lib=${webapp.dir}/lib
|
||||||
|
webapp.build=${webapp.dir}/.build
|
||||||
|
webapp.dir.jar=${webapp.build}/vitro-webapp.jar
|
||||||
|
webapp.name=vitro
|
||||||
|
webapp.deploy.home=${tomcat.home}/webapps/${webapp.name}
|
||||||
|
|
||||||
|
ingest.dir=./ingestTool
|
||||||
|
ingest.lib=${ingest.dir}/lib
|
||||||
|
ingest.build=${ingest.dir}/build
|
||||||
|
|
||||||
|
ws.dir=./services
|
||||||
|
ws.lib=${ws.dir}/lib
|
||||||
|
ws.build=${webapp.dir}/build
|
||||||
|
ws.wsdd.dir=${ws.dir}/wsdd
|
4
config/test
Normal file
4
config/test
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
|
||||||
|
osk
|
||||||
|
sk
|
||||||
|
dklsjf
|
25
doc/license.txt
Normal file
25
doc/license.txt
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
Copyright (c) ${year}, Cornell University
|
||||||
|
All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions are met:
|
||||||
|
|
||||||
|
* Redistributions of source code must retain the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer.
|
||||||
|
* Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer in the documentation
|
||||||
|
and/or other materials provided with the distribution.
|
||||||
|
* Neither the name of Cornell University nor the names of its contributors
|
||||||
|
may be used to endorse or promote products derived from this software
|
||||||
|
without specific prior written permission.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||||
|
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
||||||
|
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||||
|
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||||
|
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
|
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||||
|
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
|
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
12
services/additions/WEB-INF/classes/README.txt
Normal file
12
services/additions/WEB-INF/classes/README.txt
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
bdc34:
|
||||||
|
This directory is here so that we can stick properties files
|
||||||
|
and other resources into a directory that will end up on
|
||||||
|
the java CLASSPATH.
|
||||||
|
|
||||||
|
Files for apache axis:
|
||||||
|
-rw-r--r-- 1 bdc34 bdc34 9355 Aug 14 12:13 i18n_ja.properties
|
||||||
|
-rw-r--r-- 1 bdc34 bdc34 4799 Aug 14 12:13 i18n.properties
|
||||||
|
-rw-rw-r-- 1 bdc34 bdc34 921 Aug 14 12:32 log4j.properties
|
||||||
|
|
||||||
|
It seems like the log4j.properties file may cause problems if
|
||||||
|
we start using log4j in other parts of the system.
|
132
services/additions/WEB-INF/classes/i18n.properties
Normal file
132
services/additions/WEB-INF/classes/i18n.properties
Normal file
|
@ -0,0 +1,132 @@
|
||||||
|
############################################################
|
||||||
|
# i18n settings for the Axis Web-Application
|
||||||
|
#
|
||||||
|
|
||||||
|
#################### [i18n global setting] #################
|
||||||
|
#
|
||||||
|
locales=en ja
|
||||||
|
|
||||||
|
#################### [index.jsp] ###########################
|
||||||
|
#
|
||||||
|
|
||||||
|
### Header ###
|
||||||
|
#
|
||||||
|
language=Language
|
||||||
|
welcomeMessage=Hello! Welcome to Apache-Axis.
|
||||||
|
|
||||||
|
### Operation list ###
|
||||||
|
#
|
||||||
|
operationType=What do you want to do today?
|
||||||
|
|
||||||
|
# Validation
|
||||||
|
validation=Validation
|
||||||
|
validationURL=happyaxis.jsp
|
||||||
|
validationFootnote00=Validate the local installation's configuration
|
||||||
|
validationFootnote01=see below if this does not work.
|
||||||
|
|
||||||
|
# List
|
||||||
|
serviceList=List
|
||||||
|
serviceListURL=servlet/AxisServlet
|
||||||
|
serviceListFootnote=View the list of deployed Web services
|
||||||
|
|
||||||
|
# Call
|
||||||
|
callAnEndpoint=Call
|
||||||
|
callAnEndpointURL=EchoHeaders.jws?method=list
|
||||||
|
callAnEndpointFootnote00=Call a local endpoint that list's the caller's http headers
|
||||||
|
callAnEndpointFootnote01=(or see its <a href="EchoHeaders.jws?wsdl">WSDL</a>).
|
||||||
|
|
||||||
|
# Visit
|
||||||
|
visit=Visit
|
||||||
|
visitURL=http://ws.apache.org/axis/
|
||||||
|
visitFootnote=Visit the Apache-Axis Home Page
|
||||||
|
|
||||||
|
# Admin
|
||||||
|
admin=Administer Axis
|
||||||
|
adminURL=servlet/AdminServlet
|
||||||
|
adminFootnote=[disabled by default for security reasons]
|
||||||
|
|
||||||
|
# SOAPMonitor
|
||||||
|
soapMonitor=SOAPMonitor
|
||||||
|
soapMonitorURL=SOAPMonitor
|
||||||
|
soapMonitorFootnote=[disabled by default for security reasons]
|
||||||
|
|
||||||
|
# Sidenote
|
||||||
|
sideNote=To enable the disabled features, uncomment the appropriate declarations in WEB-INF/web.xml in the webapplication and restart it.
|
||||||
|
|
||||||
|
### Validating Axis ###
|
||||||
|
#
|
||||||
|
|
||||||
|
# Title
|
||||||
|
validatingAxis=Validating Axis
|
||||||
|
|
||||||
|
# Note 0
|
||||||
|
validationNote00=If the "happyaxis" validation page displays an exception instead of a status page, the likely cause is that you have multiple XML parsers in your classpath. Clean up your classpath by eliminating extraneous parsers.
|
||||||
|
|
||||||
|
# Note 1
|
||||||
|
validationNote01=If you have problems getting Axis to work, consult the Axis <a href="http://wiki.apache.org/ws/FrontPage/Axis">Wiki</a> and then try the Axis user mailing list.
|
||||||
|
|
||||||
|
#
|
||||||
|
#################### [index.jsp] ###########################
|
||||||
|
|
||||||
|
#################### [happyaxis.jsp] #######################
|
||||||
|
#
|
||||||
|
|
||||||
|
pageTitle=Axis Happiness Page
|
||||||
|
pageRole=Examining webapp configuration
|
||||||
|
|
||||||
|
### Needed Components ###
|
||||||
|
#
|
||||||
|
neededComponents=Needed Components
|
||||||
|
error=Error
|
||||||
|
warning=Warning
|
||||||
|
criticalErrorMessage=Axis will not work.
|
||||||
|
uncertainErrorMessage=Axis may not work.
|
||||||
|
# parameters = url, name
|
||||||
|
seeHomepage=<br> See <a href="{0}">{0}</a>
|
||||||
|
# parameters = category, classname, jarFile, errorText, url
|
||||||
|
couldNotFound=<p> {0}: could not find class {1} from file <b>{2}</b><br> {3} {4}<p>
|
||||||
|
# parameters = description, classname
|
||||||
|
foundClass00=Found {0} ( {1} )
|
||||||
|
# parameters = description, classname
|
||||||
|
foundClass01=Found {0} ( {1} ) at {2}
|
||||||
|
# parameters = category, classname, errorText, url
|
||||||
|
couldNotFoundDep=<p> {0}: could not find a dependency of class {1} from file <b>{2}</b><br> {3} {4}
|
||||||
|
# parameters = ncdfe.getMessage(), classname
|
||||||
|
theRootCause=<br>The root cause was: {0}<br>This can happen e.g. if {1} is in the 'common' classpath, but a dependency like activation.jar is only in the webapp classpath.<p>
|
||||||
|
# parameters = location
|
||||||
|
invalidSAAJ=<b>Error:</b> Invalid version of SAAJ API found in {0}. Make sure that Axis' saaj.jar precedes {0} in CLASSPATH.<br>
|
||||||
|
axisInstallation=Axis installation instructions
|
||||||
|
|
||||||
|
### Optional Components ###
|
||||||
|
#
|
||||||
|
|
||||||
|
optionalComponents=Optional Components
|
||||||
|
attachmentsError=Attachments will not work.
|
||||||
|
xmlSecurityError=XML Security is not supported.
|
||||||
|
httpsError=https is not supported.
|
||||||
|
|
||||||
|
happyResult00=<i>The core axis libraries are present.</i>
|
||||||
|
happyResult01=<i>The optional components are present.</i>
|
||||||
|
# parameters = needed(num of missing libraries)
|
||||||
|
unhappyResult00=<i>{0} core axis library(ies) are missing</i>
|
||||||
|
# parameters = wanted(num of missing libraries)
|
||||||
|
unhappyResult01=<i>{0} wanted optional axis librar(ies) are missing</i>
|
||||||
|
|
||||||
|
hintString=<B><I>Note:</I></B> On Tomcat 4.x and Java1.4, you may need to put libraries that contain java.* or javax.* packages into CATALINA_HOME/common/lib <br>jaxrpc.jar and saaj.jar are two such libraries.<p/>
|
||||||
|
noteString=<B><I>Note:</I></B> Even if everything this page probes for is present, there is no guarantee your web service will work, because there are many configuration options that we do not check for. These tests are <i>necessary</i> but not <i>sufficient</i><hr>
|
||||||
|
|
||||||
|
### Examining Application Server ###
|
||||||
|
#
|
||||||
|
apsExamining=Examining Application Server
|
||||||
|
recommendedParser=<b>We recommend <a href="http://xml.apache.org/xerces2-j/">Xerces 2</a> over Crimson as the XML parser for Axis</b>
|
||||||
|
couldNotCreateParser=Could not create an XML Parser
|
||||||
|
|
||||||
|
### Examining System Properties ###
|
||||||
|
#
|
||||||
|
sysExamining=Examining System Properties
|
||||||
|
sysPropError=System properties are not accessible.<p>
|
||||||
|
classFoundError=an unknown location
|
||||||
|
apsPlatform=Platform
|
||||||
|
|
||||||
|
#
|
||||||
|
#################### [happyaxis.jsp] #######################
|
127
services/additions/WEB-INF/classes/i18n_ja.properties
Normal file
127
services/additions/WEB-INF/classes/i18n_ja.properties
Normal file
|
@ -0,0 +1,127 @@
|
||||||
|
############################################################
|
||||||
|
# Japanese settings for the Axis Web-Application
|
||||||
|
#
|
||||||
|
|
||||||
|
#################### [index.jsp] ###########################
|
||||||
|
#
|
||||||
|
|
||||||
|
### Header ###
|
||||||
|
#
|
||||||
|
language=\u8a00\u8a9e
|
||||||
|
welcomeMessage=\u3053\u3093\u306b\u3061\u306f\uff01 Apache-Axis\u3078\u3088\u3046\u3053\u305d
|
||||||
|
|
||||||
|
### Operation list ###
|
||||||
|
#
|
||||||
|
operationType=\u4eca\u65e5\u306f\u4f55\u3092\u3057\u305f\u3044\u3067\u3059\u304b\uff1f
|
||||||
|
|
||||||
|
# Validation
|
||||||
|
validation=\u691c\u8a3c
|
||||||
|
validationURL=happyaxis.jsp
|
||||||
|
validationFootnote00=\u30ed\u30fc\u30ab\u30eb\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u72b6\u6cc1\u3092\u691c\u8a3c\u3059\u308b
|
||||||
|
validationFootnote01=\u3046\u307e\u304f\u6a5f\u80fd\u3057\u306a\u3044\u5834\u5408\u306f\u3001\u4e0b\u8a18\u300cAxis\u306e\u691c\u8a3c\u300d\u3092\u53c2\u7167
|
||||||
|
|
||||||
|
# List
|
||||||
|
serviceList=\u30ea\u30b9\u30c8
|
||||||
|
serviceListURL=servlet/AxisServlet
|
||||||
|
serviceListFootnote=\u30c7\u30d7\u30ed\u30a4\u6e08\u307f\u306eWeb\u30b5\u30fc\u30d3\u30b9\u30ea\u30b9\u30c8\u3092\u898b\u308b
|
||||||
|
|
||||||
|
# Call
|
||||||
|
callAnEndpoint=\u547c\u51fa\u3057
|
||||||
|
callAnEndpointURL=EchoHeaders.jws?method=list
|
||||||
|
callAnEndpointFootnote00=HTTP\u30d8\u30c3\u30c0\u306e\u4e00\u89a7\u8868\u793a\u3092\u884c\u3046\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8\u3092\u8d77\u52d5\u3059\u308b
|
||||||
|
callAnEndpointFootnote01=(\u3082\u3057\u304f\u306f<a href="EchoHeaders.jws?wsdl">WSDL</a>\u306e\u53c2\u7167)
|
||||||
|
|
||||||
|
# Visit
|
||||||
|
visit=\u8a2a\u554f
|
||||||
|
visitURL=http://ws.apache.org/axis/ja/index.html
|
||||||
|
visitFootnote=Apache Axis\u30db\u30fc\u30e0\u30da\u30fc\u30b8\u3092\u8a2a\u554f\u3059\u308b
|
||||||
|
|
||||||
|
# Admin
|
||||||
|
admin=Axis\u306e\u7ba1\u7406
|
||||||
|
adminURL=servlet/AdminServlet
|
||||||
|
adminFootnote=[\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u4e0a\u306e\u7406\u7531\u304b\u3089\u30c7\u30d5\u30a9\u30eb\u30c8\u3067\u306f\u5229\u7528\u4e0d\u53ef]
|
||||||
|
|
||||||
|
# SOAPMonitor
|
||||||
|
soapMonitor=SOAP\u30e2\u30cb\u30bf
|
||||||
|
soapMonitorURL=SOAPMonitor
|
||||||
|
soapMonitorFootnote=[\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u4e0a\u306e\u7406\u7531\u304b\u3089\u30c7\u30d5\u30a9\u30eb\u30c8\u3067\u306f\u5229\u7528\u4e0d\u53ef]
|
||||||
|
|
||||||
|
# Sidenote
|
||||||
|
sideNote=\u4e0a\u8a18\u306e\u30c7\u30d5\u30a9\u30eb\u30c8\u3067\u5229\u7528\u3067\u304d\u306a\u3044\u6a5f\u80fd\u3092\u6709\u52b9\u306b\u3059\u308b\u306b\u306f\u3001web\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u5185\u306eWEB-INF/web.xml\u30d5\u30a1\u30a4\u30eb\u306e\u8a72\u5f53\u3059\u308b\u5ba3\u8a00\u306e\u30b3\u30e1\u30f3\u30c8\u3092\u5916\u3057\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u518d\u8d77\u52d5\u3057\u3066\u4e0b\u3055\u3044\u3002
|
||||||
|
|
||||||
|
### Validating Axis ###
|
||||||
|
#
|
||||||
|
|
||||||
|
# Title
|
||||||
|
validatingAxis=Axis\u306e\u691c\u8a3c
|
||||||
|
|
||||||
|
# Note 0
|
||||||
|
validationNote00="happyaxis"\u691c\u8a3c\u30da\u30fc\u30b8\u304c\u72b6\u614b\u8868\u793a\u3067\u306f\u306a\u304f\u4f8b\u5916\u3092\u8868\u793a\u3059\u308b\u5834\u5408\u3001\u539f\u56e0\u3068\u3057\u3066\u306f\u30af\u30e9\u30b9\u30d1\u30b9\u5185\u306b\u8907\u6570\u306eXML\u30d1\u30fc\u30b5\u3092\u6307\u5b9a\u3057\u3066\u3044\u308b\u3053\u3068\u304c\u8003\u3048\u3089\u308c\u307e\u3059\u3002\u95a2\u4fc2\u306a\u3044\u30d1\u30fc\u30b5\u3092\u30af\u30e9\u30b9\u30d1\u30b9\u304b\u3089\u53d6\u308a\u9664\u3044\u3066\u307f\u3066\u4e0b\u3055\u3044\u3002
|
||||||
|
|
||||||
|
# Note 1
|
||||||
|
validationNote01=Axis\u3092\u52d5\u4f5c\u3055\u305b\u308b\u4e0a\u3067\u554f\u984c\u3092\u62b1\u3048\u3066\u3044\u308b\u5834\u5408\u306f\u3001\u307e\u305a<a href="http://wiki.apache.org/ws/ja/axis">Axis Wiki</a>\u3092\u53c2\u8003\u306b\u3057\u3001\u305d\u306e\u5f8c\u3067Axis\u30e6\u30fc\u30b6\u30e1\u30fc\u30ea\u30f3\u30b0\u30ea\u30b9\u30c8\u306b\u6295\u7a3f\u3057\u3066\u307f\u3066\u4e0b\u3055\u3044\u3002
|
||||||
|
|
||||||
|
#
|
||||||
|
#################### [index.jsp] ###########################
|
||||||
|
|
||||||
|
#################### [happyaxis.jsp] #######################
|
||||||
|
#
|
||||||
|
pageTitle=Axis Happiness Page
|
||||||
|
pageRole=webapp\u306e\u69cb\u6210\u306b\u95a2\u3059\u308b\u8abf\u67fb
|
||||||
|
|
||||||
|
### Needed Components ###
|
||||||
|
#
|
||||||
|
neededComponents=\u5fc5\u9808\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8
|
||||||
|
error=\u30a8\u30e9\u30fc
|
||||||
|
warning=\u8b66\u544a
|
||||||
|
criticalErrorMessage=\u304a\u305d\u3089\u304fAxis\u306f\u52d5\u304d\u307e\u305b\u3093\u3002
|
||||||
|
uncertainErrorMessage=Axis\u306f\u52d5\u304b\u306a\u3044\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002
|
||||||
|
# parameters = url, name
|
||||||
|
seeHomepage=<br> <a href="{0}">{0}</a>\u3092\u898b\u3066\u4e0b\u3055\u3044\u3002
|
||||||
|
# parameters = category, classname, jarFile, errorText, url
|
||||||
|
couldNotFound=<p> {0}: <b>{2}</b>\u30d5\u30a1\u30a4\u30eb\u304c\u63d0\u4f9b\u3059\u308b{1}\u30af\u30e9\u30b9\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3002<br> {3} {4}<p>
|
||||||
|
# parameters = description, classname
|
||||||
|
foundClass00={0} ( {1} ) \u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f\u3002
|
||||||
|
# parameters = description, classname, location
|
||||||
|
foundClass01={0} ( {1} ) \u304c{2}\u3067\u898b\u3064\u304b\u308a\u307e\u3057\u305f\u3002
|
||||||
|
# parameters = category, classname, errorText, url
|
||||||
|
couldNotFoundDep=<p> {0}: <b>{2}</b>\u30d5\u30a1\u30a4\u30eb\u304c\u63d0\u4f9b\u3059\u308b{1}\u30af\u30e9\u30b9\u306e\u4f9d\u5b58\u95a2\u4fc2\u304c\u89e3\u6c7a\u3067\u304d\u307e\u305b\u3093\u3002<br> {3} {4}
|
||||||
|
# parameters = ncdfe.getMessage(), classname
|
||||||
|
theRootCause=<br>\u6839\u672c\u539f\u56e0: {0}<br>\u3053\u306e\u30a8\u30e9\u30fc\u306f\u6b21\u306e\u3088\u3046\u306a\u5834\u5408\u306b\u767a\u751f\u3059\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002\u300c\u5171\u901a\u306e\u300d\u30af\u30e9\u30b9\u30d1\u30b9\u306b{1}\u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u306b\u3082\u304b\u304b\u308f\u3089\u305a\u3001activation.jar \u306e\u3088\u3046\u306a\u4f9d\u5b58\u3059\u308b\u30e9\u30a4\u30d6\u30e9\u30ea\u304cwebapp\u306e\u30af\u30e9\u30b9\u30d1\u30b9\u3060\u3051\u306b\u3057\u304b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u306a\u3044\u3088\u3046\u306a\u5834\u5408\u3067\u3059\u3002<p>
|
||||||
|
# parameters = location
|
||||||
|
invalidSAAJ=<b>\u30a8\u30e9\u30fc:</b> {0}\u306b\u9069\u5207\u3067\u306a\u3044\u30d0\u30fc\u30b8\u30e7\u30f3\u306eSAAJ API\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f\u3002Axis\u306esaaj.jar\u3092\u3001CLASSPATH\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b{0} \u3088\u308a\u3082\u524d\u65b9\u306b\u8a2d\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002<br>
|
||||||
|
axisInstallation=Axis\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u624b\u9806
|
||||||
|
|
||||||
|
### Optional Components ###
|
||||||
|
#
|
||||||
|
optionalComponents=\u30aa\u30d7\u30b7\u30e7\u30ca\u30eb\uff65\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8
|
||||||
|
attachmentsError=\u304a\u305d\u3089\u304fAttachments\u306f\u6a5f\u80fd\u3057\u307e\u305b\u3093\u3002
|
||||||
|
xmlSecurityError=XML Security\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u305b\u3093\u3002
|
||||||
|
httpsError=https\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u305b\u3093\u3002
|
||||||
|
|
||||||
|
happyResult00=<i>axis\u306e\u30b3\u30a2\uff65\u30e9\u30a4\u30d6\u30e9\u30ea\u306f\u5168\u3066\u5b58\u5728\u3057\u3066\u3044\u307e\u3059\u3002</i>
|
||||||
|
happyResult01=<i>\u30aa\u30d7\u30b7\u30e7\u30ca\u30eb\uff65\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u5b58\u5728\u3057\u3066\u3044\u307e\u3059\u3002</i>
|
||||||
|
# parameters = needed(num of missing libraries)
|
||||||
|
unhappyResult00=<i>axis\u306e\u30b3\u30a2\uff65\u30e9\u30a4\u30d6\u30e9\u30ea\u304c{0}\u3064\u6b20\u3051\u3066\u3044\u307e\u3059\u3002</i>
|
||||||
|
# parameters = wanted(num of missing libraries)
|
||||||
|
unhappyResult01=<i>axis\u306e\u30aa\u30d7\u30b7\u30e7\u30ca\u30eb\uff65\u30e9\u30a4\u30d6\u30e9\u30ea\u304c{0}\u3064\u6b20\u3051\u3066\u3044\u307e\u3059\u3002</i>
|
||||||
|
|
||||||
|
hintString=<B><I>\u6ce8\u610f:</I></B> Tomcat 4.x \u3068 Java1.4 \u4e0a\u3067\u306f\u3001CATALINA_HOME/common/lib \u306b\u3001java.* \u3082\u3057\u304f\u306f javax.* \u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u542b\u3080\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u914d\u7f6e\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002<br>\u4f8b\u3048\u3070 jaxrpc.jar \u3068 saaj.jar \u306f\u3001\u305d\u306e\u3088\u3046\u306a\u30e9\u30a4\u30d6\u30e9\u30ea\u3067\u3059\u3002<p/>
|
||||||
|
noteString=<B><I>\u6ce8\u610f:</I></B> \u30da\u30fc\u30b8\u306b\u5168\u3066\u306e\u8abf\u67fb\u7d50\u679c\u304c\u8868\u793a\u3055\u308c\u305f\u3068\u3057\u3066\u3082\u3001\u30c1\u30a7\u30c3\u30af\u3067\u304d\u306a\u3044\u69cb\u6210\u30aa\u30d7\u30b7\u30e7\u30f3\u3082\u591a\u3044\u305f\u3081\u3001\u3042\u306a\u305f\u306eWeb\u30b5\u30fc\u30d3\u30b9\u304c\u6b63\u5e38\u306b\u6a5f\u80fd\u3059\u308b\u4fdd\u969c\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u3053\u308c\u3089\u306e\u30c6\u30b9\u30c8\u306f<i>\u5fc5\u8981</i>\u306a\u3082\u306e\u3067\u3059\u304c\u3001<i>\u5341\u5206</i>\u306a\u3082\u306e\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002
|
||||||
|
|
||||||
|
### Examining Application Server ###
|
||||||
|
#
|
||||||
|
apsExamining=\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\uff65\u30b5\u30fc\u30d0\u30fc\u306b\u95a2\u3059\u308b\u8abf\u67fb
|
||||||
|
recommendedParser=<b>Axis\u3067\u4f7f\u7528\u3059\u308bXML\u30d1\u30fc\u30b5\u30fc\u306b\u306f Crimson \u3067\u306f\u306a\u304f\u3001<a href="http://xml.apache.org/xerces2-j/">Xerces 2</a> \u3092\u63a8\u5968\u3057\u3066\u3044\u307e\u3059\u3002</b>
|
||||||
|
couldNotCreateParser=XML Parser\u3092\u751f\u6210\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\u3002
|
||||||
|
|
||||||
|
### Examining System Properties ###
|
||||||
|
#
|
||||||
|
sysExamining=\u30b7\u30b9\u30c6\u30e0\uff65\u30d7\u30ed\u30d1\u30c6\u30a3\u306b\u95a2\u3059\u308b\u8abf\u67fb
|
||||||
|
sysPropError=\u30b7\u30b9\u30c6\u30e0\uff65\u30d7\u30ed\u30d1\u30c6\u30a3\u306b\u30a2\u30af\u30bb\u30b9\u3067\u304d\u307e\u305b\u3093\u3002<p>
|
||||||
|
|
||||||
|
classFoundError=\u4e0d\u660e\u306a\u5834\u6240
|
||||||
|
apsPlatform=\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0
|
||||||
|
|
||||||
|
#
|
||||||
|
#################### [happyaxis.jsp] #######################
|
20
services/additions/WEB-INF/classes/log4j.properties
Normal file
20
services/additions/WEB-INF/classes/log4j.properties
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
# Set root category priority to INFO and its only appender to CONSOLE.
|
||||||
|
log4j.rootCategory=INFO, CONSOLE
|
||||||
|
#log4j.rootCategory=INFO, CONSOLE, LOGFILE
|
||||||
|
|
||||||
|
# Set the enterprise logger category to FATAL and its only appender to CONSOLE.
|
||||||
|
log4j.logger.org.apache.axis.enterprise=FATAL, CONSOLE
|
||||||
|
|
||||||
|
# CONSOLE is set to be a ConsoleAppender using a PatternLayout.
|
||||||
|
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
|
||||||
|
log4j.appender.CONSOLE.Threshold=INFO
|
||||||
|
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
|
||||||
|
log4j.appender.CONSOLE.layout.ConversionPattern=- %m%n
|
||||||
|
|
||||||
|
# LOGFILE is set to be a File appender using a PatternLayout.
|
||||||
|
log4j.appender.LOGFILE=org.apache.log4j.FileAppender
|
||||||
|
log4j.appender.LOGFILE.File=axis.log
|
||||||
|
log4j.appender.LOGFILE.Append=true
|
||||||
|
log4j.appender.LOGFILE.Threshold=INFO
|
||||||
|
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
|
||||||
|
log4j.appender.LOGFILE.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
|
1482
services/additions/admin/axis/SOAPMonitorApplet.java
Normal file
1482
services/additions/admin/axis/SOAPMonitorApplet.java
Normal file
File diff suppressed because it is too large
Load diff
114
services/additions/admin/axis/axisindex.jsp
Normal file
114
services/additions/admin/axis/axisindex.jsp
Normal file
|
@ -0,0 +1,114 @@
|
||||||
|
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
|
||||||
|
|
||||||
|
<html>
|
||||||
|
<%@ page contentType="text/html; charset=utf-8" %>
|
||||||
|
<%
|
||||||
|
/*
|
||||||
|
* Copyright 2005 The Apache Software Foundation.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
%>
|
||||||
|
|
||||||
|
<%@ include file="i18nLib.jsp" %>
|
||||||
|
|
||||||
|
<%
|
||||||
|
// initialize a private HttpServletRequest
|
||||||
|
setRequest(request);
|
||||||
|
|
||||||
|
// set a resouce base
|
||||||
|
setResouceBase("i18n");
|
||||||
|
%>
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||||
|
<title>Apache-Axis</title>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body bgcolor="#FFFFFF">
|
||||||
|
|
||||||
|
<h1 align="center">Apache-AXIS</h1>
|
||||||
|
|
||||||
|
<%= getLocaleChoice() %>
|
||||||
|
|
||||||
|
<%
|
||||||
|
out.print(getMessage("welcomeMessage")+"<p/>");
|
||||||
|
out.print(getMessage("operationType"));
|
||||||
|
%>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<%
|
||||||
|
out.print("<a href=\""+ getMessage("validationURL") +"\">");
|
||||||
|
out.print(getMessage("validation") +"</a> - ");
|
||||||
|
out.print(getMessage("validationFootnote00") +"<br>");
|
||||||
|
out.print("<i>"+ getMessage("validationFootnote01") +"</i>");
|
||||||
|
%>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<%
|
||||||
|
out.print("<a href=\""+ getMessage("serviceListURL") +"\">");
|
||||||
|
out.print(getMessage("serviceList") +"</a> - ");
|
||||||
|
out.print(getMessage("serviceListFootnote"));
|
||||||
|
%>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<%
|
||||||
|
out.print("<a href=\""+ getMessage("callAnEndpointURL") +"\">");
|
||||||
|
out.print(getMessage("callAnEndpoint") +"</a> - ");
|
||||||
|
out.print(getMessage("callAnEndpointFootnote00") +" ");
|
||||||
|
out.print(getMessage("callAnEndpointFootnote01"));
|
||||||
|
%>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<%
|
||||||
|
out.print("<a href=\""+ getMessage("visitURL") +"\">");
|
||||||
|
out.print(getMessage("visit") +"</a> - ");
|
||||||
|
out.print(getMessage("visitFootnote"));
|
||||||
|
%>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<%
|
||||||
|
out.print("<a href=\""+ getMessage("adminURL") +"\">");
|
||||||
|
out.print(getMessage("admin") +"</a> - ");
|
||||||
|
out.print(getMessage("adminFootnote"));
|
||||||
|
%>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<%
|
||||||
|
out.print("<a href=\""+ getMessage("soapMonitorURL") +"\">");
|
||||||
|
out.print(getMessage("soapMonitor") +"</a> - ");
|
||||||
|
out.print(getMessage("soapMonitorFootnote"));
|
||||||
|
%>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<%
|
||||||
|
out.print(getMessage("sideNote") +"<p/>");
|
||||||
|
%>
|
||||||
|
|
||||||
|
<%
|
||||||
|
out.print("<h3>"+ getMessage("validatingAxis") +"</h3>");
|
||||||
|
|
||||||
|
out.print(getMessage("validationNote00") +"<p/>");
|
||||||
|
out.print(getMessage("validationNote01"));
|
||||||
|
%>
|
||||||
|
</body>
|
||||||
|
</html>
|
274
services/additions/admin/axis/fingerprint.jsp
Normal file
274
services/additions/admin/axis/fingerprint.jsp
Normal file
|
@ -0,0 +1,274 @@
|
||||||
|
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
|
||||||
|
|
||||||
|
<%@ page import="java.io.File,
|
||||||
|
java.io.IOException,
|
||||||
|
java.util.Date"
|
||||||
|
session="false" %>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>System Fingerprint</title>
|
||||||
|
</head>
|
||||||
|
<body bgcolor=#ffffff>
|
||||||
|
<%!
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Fingerprint the users system. This is mainly for use in
|
||||||
|
* diagnosing classpath problems. It is intended to dump out
|
||||||
|
* a copy of the environment this webapp is running in,
|
||||||
|
* and additionally attempt to identify versions of each jar
|
||||||
|
* in the classpath.
|
||||||
|
*
|
||||||
|
* @author Brian Ewins
|
||||||
|
*/
|
||||||
|
|
||||||
|
private java.util.Properties versionProps=new java.util.Properties();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Identify the version of a jar file. This uses a properties file
|
||||||
|
* containing known names and sizes in the format
|
||||||
|
* 'name(size)=version'. Version strings should be like 'xerces-1.4'
|
||||||
|
* ie they should include the name of the library.
|
||||||
|
*/
|
||||||
|
public String getFileVersion(File file) throws IOException {
|
||||||
|
String key="<td>"+file.getName()+"</td>";
|
||||||
|
key+= "<td>"+file.length()+"</td>";
|
||||||
|
Date timestamp=new Date(file.lastModified());
|
||||||
|
key+= "<td>"+timestamp.toString()+"</td>";
|
||||||
|
return key;
|
||||||
|
|
||||||
|
/* TODO: implement
|
||||||
|
String value=versionProps.getProperty(key);
|
||||||
|
if (value==null) {
|
||||||
|
// make it possible to have jars without version nos
|
||||||
|
value=versionProps.getProperty(file.getName());
|
||||||
|
}
|
||||||
|
if (value==null) {
|
||||||
|
// fall back on something obvious
|
||||||
|
value=key;
|
||||||
|
Date timestamp=new Date(file.lastModified());
|
||||||
|
value+=" / "+timestamp.toString();
|
||||||
|
}
|
||||||
|
return value;
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Split up a classpath-like variable. Returns a list of files.
|
||||||
|
* TODO: this can't cope with relative paths. I think theres code in BCEL that
|
||||||
|
* can be used for this?
|
||||||
|
*/
|
||||||
|
File[] splitClasspath(String path) throws IOException {
|
||||||
|
java.util.StringTokenizer st=
|
||||||
|
new java.util.StringTokenizer(path,
|
||||||
|
System.getProperty("path.separator"));
|
||||||
|
int toks=st.countTokens();
|
||||||
|
File[] files=new File[toks];
|
||||||
|
for(int i=0;i<toks;i++) {
|
||||||
|
files[i]=new File(st.nextToken());
|
||||||
|
}
|
||||||
|
return files;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** given a list of files, return a list of jars which actually exist */
|
||||||
|
File[] scanFiles(File[] files) throws IOException {
|
||||||
|
File[] jars=new File[files.length];
|
||||||
|
int found=0;
|
||||||
|
for (int i=0; i<files.length; i++) {
|
||||||
|
if (files[i].getName().toLowerCase().endsWith(".jar")
|
||||||
|
&& files[i].exists()) {
|
||||||
|
jars[found]=files[i];
|
||||||
|
found++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (found<files.length) {
|
||||||
|
File[] temp=new File[found];
|
||||||
|
System.arraycopy(jars,0,temp,0,found);
|
||||||
|
jars=temp;
|
||||||
|
}
|
||||||
|
return jars;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static final File[] NO_FILES=new File[0];
|
||||||
|
|
||||||
|
/** scan a directory for jars */
|
||||||
|
public File[] scanDir(String dir) throws IOException
|
||||||
|
{
|
||||||
|
if(dir==null) {
|
||||||
|
return NO_FILES;
|
||||||
|
}
|
||||||
|
return scanDir(new File(dir));
|
||||||
|
}
|
||||||
|
|
||||||
|
public File[] scanDir(File dir) throws IOException {
|
||||||
|
if (!dir.exists() || !dir.isDirectory()) {
|
||||||
|
return NO_FILES;
|
||||||
|
}
|
||||||
|
return scanFiles(dir.listFiles());
|
||||||
|
}
|
||||||
|
|
||||||
|
/** scan a classpath for jars */
|
||||||
|
public File[] scanClasspath(String path) throws IOException {
|
||||||
|
if (path==null) {
|
||||||
|
return NO_FILES;
|
||||||
|
}
|
||||||
|
return scanFiles(splitClasspath(path));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* scan a 'dirpath' (like the java.ext.dirs system property) for jars
|
||||||
|
*/
|
||||||
|
public File[] scanDirpath(String path) throws IOException {
|
||||||
|
if (path==null) {
|
||||||
|
return NO_FILES;
|
||||||
|
}
|
||||||
|
File[] current=new File[0];
|
||||||
|
File[] dirs=splitClasspath(path);
|
||||||
|
for(int i=0; i<dirs.length; i++) {
|
||||||
|
File[] jars=scanDir(dirs[i]);
|
||||||
|
File[] temp=new File[current.length+jars.length];
|
||||||
|
System.arraycopy(current,0,temp,0,current.length);
|
||||||
|
System.arraycopy(jars,0,temp,current.length,jars.length);
|
||||||
|
current=temp;
|
||||||
|
}
|
||||||
|
return scanFiles(current);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** print out the jar versions for a directory */
|
||||||
|
public void listDirectory(String title, JspWriter out,String dir, String comment) throws IOException {
|
||||||
|
listVersions(title, out,scanDir(dir), comment);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** print out the jar versions for a directory-like system property */
|
||||||
|
public void listDirProperty(String title, JspWriter out,String key, String comment) throws IOException {
|
||||||
|
listVersions(title, out,scanDir(System.getProperty(key)), comment);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** print out the jar versions for a classpath-like system property */
|
||||||
|
public void listClasspathProperty(String title, JspWriter out,String key, String comment) throws IOException {
|
||||||
|
listVersions(title, out,scanClasspath(System.getProperty(key)), comment);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** print out the jar versions for a 'java.ext.dirs'-like system property */
|
||||||
|
public void listDirpathProperty(String title, JspWriter out,String key, String comment) throws IOException {
|
||||||
|
listVersions(title, out,scanDirpath(System.getProperty(key)), comment);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** print out the jar versions for a context-relative directory */
|
||||||
|
public void listContextPath(String title, JspWriter out, String path, String comment) throws IOException {
|
||||||
|
listVersions(title, out,scanDir(getServletConfig().getServletContext().getRealPath(path)), comment);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** print out the jar versions for a given list of files */
|
||||||
|
public void listVersions(String title, JspWriter out,File[] jars, String comment) throws IOException {
|
||||||
|
out.print("<h2>");
|
||||||
|
out.print(title);
|
||||||
|
out.println("</h2>");
|
||||||
|
out.println("<table>");
|
||||||
|
for (int i=0; i<jars.length; i++) {
|
||||||
|
out.println("<tr>"+getFileVersion(jars[i])+"</tr>");
|
||||||
|
}
|
||||||
|
out.println("</table>");
|
||||||
|
if(comment!=null && comment.length()>0) {
|
||||||
|
out.println("<p>");
|
||||||
|
out.println(comment);
|
||||||
|
out.println("<p>");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
%>
|
||||||
|
<h1>System Fingerprint</h1>
|
||||||
|
<h2>JVM and Server Version</h2>
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td>Servlet Engine</td>
|
||||||
|
<td><%= getServletConfig().getServletContext().getServerInfo() %></td>
|
||||||
|
<td><%= getServletConfig().getServletContext().getMajorVersion() %></td>
|
||||||
|
<td><%= getServletConfig().getServletContext().getMinorVersion() %></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Java VM</td>
|
||||||
|
<td><%= System.getProperty("java.vm.vendor") %></td>
|
||||||
|
<td><%= System.getProperty("java.vm.name") %></td>
|
||||||
|
<td><%= System.getProperty("java.vm.version") %></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Java RE</td>
|
||||||
|
<td><%= System.getProperty("java.vendor") %></td>
|
||||||
|
<td><%= System.getProperty("java.version") %></td>
|
||||||
|
<td> </td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Platform</td>
|
||||||
|
<td><%= System.getProperty("os.name") %></td>
|
||||||
|
<td><%= System.getProperty("os.arch") %></td>
|
||||||
|
<td><%= System.getProperty("os.version") %></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<%
|
||||||
|
listClasspathProperty("Boot jars", out,"sun.boot.class.path", "Only valid on a sun jvm");
|
||||||
|
listClasspathProperty("System jars", out,"java.class.path", null);
|
||||||
|
listDirpathProperty("Extra system jars", out,"java.ext.dirs", null);
|
||||||
|
listContextPath("Webapp jars", out, "/WEB-INF/lib", null);
|
||||||
|
// identify the container...
|
||||||
|
String container=getServletConfig().getServletContext().getServerInfo();
|
||||||
|
if (container.startsWith("Tomcat Web Server/3.2")) {
|
||||||
|
String home=System.getProperty("tomcat.home");
|
||||||
|
if(home!=null) {
|
||||||
|
listDirectory("Tomcat 3.2 Common Jars", out,
|
||||||
|
home+File.separator
|
||||||
|
+"lib",
|
||||||
|
null);
|
||||||
|
}
|
||||||
|
} else if (container.startsWith("Tomcat Web Server/3.3")) {
|
||||||
|
String home=System.getProperty("tomcat.home");
|
||||||
|
if(home!=null) {
|
||||||
|
listDirectory("Tomcat 3.3 Container Jars", out,
|
||||||
|
home+File.separator
|
||||||
|
+"lib"+File.separator
|
||||||
|
+"container",
|
||||||
|
null);
|
||||||
|
listDirectory("Tomcat 3.3 Common Jars", out,
|
||||||
|
home+File.separator
|
||||||
|
+"lib"+File.separator
|
||||||
|
+"common",
|
||||||
|
null);
|
||||||
|
}
|
||||||
|
} else if (container.startsWith("Apache Tomcat/4.0")) {
|
||||||
|
//handle catalina common dir
|
||||||
|
String home=System.getProperty("catalina.home");
|
||||||
|
if(home!=null) {
|
||||||
|
listDirectory("Tomcat 4.0 Common Jars", out,
|
||||||
|
home+File.separator
|
||||||
|
+"common"+File.separator
|
||||||
|
+"lib",
|
||||||
|
null);
|
||||||
|
}
|
||||||
|
} else if (container.startsWith("Apache Tomcat/4.1")) {
|
||||||
|
//handle catalina common dir
|
||||||
|
String home=System.getProperty("catalina.home");
|
||||||
|
if(home!=null) {
|
||||||
|
listDirectory("Tomcat 4.1 Common Jars", out,
|
||||||
|
home+File.separator
|
||||||
|
+"shared"+File.separator
|
||||||
|
+"lib",
|
||||||
|
null);
|
||||||
|
}
|
||||||
|
} else if (System.getProperty("resin.home")!=null) {
|
||||||
|
String home=System.getProperty("resin.home");
|
||||||
|
if(home!=null) {
|
||||||
|
listDirectory("Resin Common Jars", out,
|
||||||
|
home+File.separator
|
||||||
|
+"lib",
|
||||||
|
null);
|
||||||
|
}
|
||||||
|
} else if (System.getProperty("weblogic.httpd.servlet.classpath")!=null) {
|
||||||
|
listClasspathProperty("Weblogic Servlet Jars", out,
|
||||||
|
"weblogic.httpd.servlet.classpath",
|
||||||
|
null);
|
||||||
|
} else {
|
||||||
|
//TODO: identify more servlet engine classpaths.
|
||||||
|
}
|
||||||
|
%>
|
||||||
|
</body>
|
||||||
|
</html>
|
493
services/additions/admin/axis/happyaxis.jsp
Normal file
493
services/additions/admin/axis/happyaxis.jsp
Normal file
|
@ -0,0 +1,493 @@
|
||||||
|
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
|
||||||
|
|
||||||
|
<html>
|
||||||
|
<%@ page contentType="text/html; charset=utf-8"
|
||||||
|
import="java.io.InputStream,
|
||||||
|
java.io.IOException,
|
||||||
|
javax.xml.parsers.SAXParser,
|
||||||
|
java.lang.reflect.*,
|
||||||
|
javax.xml.parsers.SAXParserFactory"
|
||||||
|
session="false" %>
|
||||||
|
<%
|
||||||
|
/*
|
||||||
|
* Copyright 2002,2004,2005 The Apache Software Foundation.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
%>
|
||||||
|
|
||||||
|
<%!
|
||||||
|
/*
|
||||||
|
* Happiness tests for axis. These look at the classpath and warn if things
|
||||||
|
* are missing. Normally addng this much code in a JSP page is mad
|
||||||
|
* but here we want to validate JSP compilation too, and have a drop-in
|
||||||
|
* page for easy re-use
|
||||||
|
* @author Steve 'configuration problems' Loughran
|
||||||
|
* @author dims
|
||||||
|
* @author Brian Ewins
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* test for a class existing
|
||||||
|
* @param classname
|
||||||
|
* @return class iff present
|
||||||
|
*/
|
||||||
|
Class classExists(String classname) {
|
||||||
|
try {
|
||||||
|
return Class.forName(classname);
|
||||||
|
} catch (ClassNotFoundException e) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* test for resource on the classpath
|
||||||
|
* @param resource
|
||||||
|
* @return true iff present
|
||||||
|
*/
|
||||||
|
boolean resourceExists(String resource) {
|
||||||
|
boolean found;
|
||||||
|
InputStream instream=this.getClass().getResourceAsStream(resource);
|
||||||
|
found=instream!=null;
|
||||||
|
if(instream!=null) {
|
||||||
|
try {
|
||||||
|
instream.close();
|
||||||
|
} catch (IOException e) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return found;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* probe for a class, print an error message is missing
|
||||||
|
* @param out stream to print stuff
|
||||||
|
* @param category text like "warning" or "error"
|
||||||
|
* @param classname class to look for
|
||||||
|
* @param jarFile where this class comes from
|
||||||
|
* @param errorText extra error text
|
||||||
|
* @param homePage where to d/l the library
|
||||||
|
* @return the number of missing classes
|
||||||
|
* @throws IOException
|
||||||
|
*/
|
||||||
|
int probeClass(JspWriter out,
|
||||||
|
String category,
|
||||||
|
String classname,
|
||||||
|
String jarFile,
|
||||||
|
String description,
|
||||||
|
String errorText,
|
||||||
|
String homePage) throws IOException {
|
||||||
|
try {
|
||||||
|
Class clazz = classExists(classname);
|
||||||
|
if(clazz == null) {
|
||||||
|
String url="";
|
||||||
|
if(homePage!=null) {
|
||||||
|
url=getMessage("seeHomepage",homePage,homePage);
|
||||||
|
}
|
||||||
|
out.write(getMessage("couldNotFound",category,classname,jarFile,errorText,url));
|
||||||
|
return 1;
|
||||||
|
} else {
|
||||||
|
String location = getLocation(out, clazz);
|
||||||
|
|
||||||
|
if(location == null) {
|
||||||
|
out.write("<li>"+getMessage("foundClass00",description,classname)+"</li><br>");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
out.write("<li>"+getMessage("foundClass01",description,classname,location)+"</li><br>");
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
} catch(NoClassDefFoundError ncdfe) {
|
||||||
|
String url="";
|
||||||
|
if(homePage!=null) {
|
||||||
|
url=getMessage("seeHomepage",homePage,homePage);
|
||||||
|
}
|
||||||
|
out.write(getMessage("couldNotFoundDep",category, classname, errorText, url));
|
||||||
|
out.write(getMessage("theRootCause",ncdfe.getMessage(), classname));
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* get the location of a class
|
||||||
|
* @param out
|
||||||
|
* @param clazz
|
||||||
|
* @return the jar file or path where a class was found
|
||||||
|
*/
|
||||||
|
|
||||||
|
String getLocation(JspWriter out,
|
||||||
|
Class clazz) {
|
||||||
|
try {
|
||||||
|
java.net.URL url = clazz.getProtectionDomain().getCodeSource().getLocation();
|
||||||
|
String location = url.toString();
|
||||||
|
if(location.startsWith("jar")) {
|
||||||
|
url = ((java.net.JarURLConnection)url.openConnection()).getJarFileURL();
|
||||||
|
location = url.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(location.startsWith("file")) {
|
||||||
|
java.io.File file = new java.io.File(url.getFile());
|
||||||
|
return file.getAbsolutePath();
|
||||||
|
} else {
|
||||||
|
return url.toString();
|
||||||
|
}
|
||||||
|
} catch (Throwable t){
|
||||||
|
}
|
||||||
|
return getMessage("classFoundError");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* a class we need if a class is missing
|
||||||
|
* @param out stream to print stuff
|
||||||
|
* @param classname class to look for
|
||||||
|
* @param jarFile where this class comes from
|
||||||
|
* @param errorText extra error text
|
||||||
|
* @param homePage where to d/l the library
|
||||||
|
* @throws IOException when needed
|
||||||
|
* @return the number of missing libraries (0 or 1)
|
||||||
|
*/
|
||||||
|
int needClass(JspWriter out,
|
||||||
|
String classname,
|
||||||
|
String jarFile,
|
||||||
|
String description,
|
||||||
|
String errorText,
|
||||||
|
String homePage) throws IOException {
|
||||||
|
return probeClass(out,
|
||||||
|
"<b>"+getMessage("error")+"</b>",
|
||||||
|
classname,
|
||||||
|
jarFile,
|
||||||
|
description,
|
||||||
|
errorText,
|
||||||
|
homePage);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* print warning message if a class is missing
|
||||||
|
* @param out stream to print stuff
|
||||||
|
* @param classname class to look for
|
||||||
|
* @param jarFile where this class comes from
|
||||||
|
* @param errorText extra error text
|
||||||
|
* @param homePage where to d/l the library
|
||||||
|
* @throws IOException when needed
|
||||||
|
* @return the number of missing libraries (0 or 1)
|
||||||
|
*/
|
||||||
|
int wantClass(JspWriter out,
|
||||||
|
String classname,
|
||||||
|
String jarFile,
|
||||||
|
String description,
|
||||||
|
String errorText,
|
||||||
|
String homePage) throws IOException {
|
||||||
|
return probeClass(out,
|
||||||
|
"<b>"+getMessage("warning")+"</b>",
|
||||||
|
classname,
|
||||||
|
jarFile,
|
||||||
|
description,
|
||||||
|
errorText,
|
||||||
|
homePage);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* get servlet version string
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
public String getServletVersion() {
|
||||||
|
ServletContext context=getServletConfig().getServletContext();
|
||||||
|
int major = context.getMajorVersion();
|
||||||
|
int minor = context.getMinorVersion();
|
||||||
|
return Integer.toString(major) + '.' + Integer.toString(minor);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* what parser are we using.
|
||||||
|
* @return the classname of the parser
|
||||||
|
*/
|
||||||
|
private String getParserName() {
|
||||||
|
SAXParser saxParser = getSAXParser();
|
||||||
|
if (saxParser == null) {
|
||||||
|
return getMessage("couldNotCreateParser");
|
||||||
|
}
|
||||||
|
|
||||||
|
// check to what is in the classname
|
||||||
|
String saxParserName = saxParser.getClass().getName();
|
||||||
|
return saxParserName;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a JAXP SAXParser
|
||||||
|
* @return parser or null for trouble
|
||||||
|
*/
|
||||||
|
private SAXParser getSAXParser() {
|
||||||
|
SAXParserFactory saxParserFactory = SAXParserFactory.newInstance();
|
||||||
|
if (saxParserFactory == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
SAXParser saxParser = null;
|
||||||
|
try {
|
||||||
|
saxParser = saxParserFactory.newSAXParser();
|
||||||
|
} catch (Exception e) {
|
||||||
|
}
|
||||||
|
return saxParser;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* get the location of the parser
|
||||||
|
* @return path or null for trouble in tracking it down
|
||||||
|
*/
|
||||||
|
|
||||||
|
private String getParserLocation(JspWriter out) {
|
||||||
|
SAXParser saxParser = getSAXParser();
|
||||||
|
if (saxParser == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
String location = getLocation(out,saxParser.getClass());
|
||||||
|
return location;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check if class implements specified interface.
|
||||||
|
* @param Class clazz
|
||||||
|
* @param String interface name
|
||||||
|
* @return boolean
|
||||||
|
*/
|
||||||
|
private boolean implementsInterface(Class clazz, String interfaceName) {
|
||||||
|
if (clazz == null) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
Class[] interfaces = clazz.getInterfaces();
|
||||||
|
if (interfaces.length != 0) {
|
||||||
|
for (int i = 0; i < interfaces.length; i++) {
|
||||||
|
if (interfaces[i].getName().equals(interfaceName)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
%>
|
||||||
|
|
||||||
|
<%@ include file="i18nLib.jsp" %>
|
||||||
|
|
||||||
|
<%
|
||||||
|
// initialize a private HttpServletRequest
|
||||||
|
setRequest(request);
|
||||||
|
|
||||||
|
// set a resouce base
|
||||||
|
setResouceBase("i18n");
|
||||||
|
%>
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title><%= getMessage("pageTitle") %></title>
|
||||||
|
</head>
|
||||||
|
<body bgcolor='#ffffff'>
|
||||||
|
|
||||||
|
<%
|
||||||
|
out.print("<h1>"+ getMessage("pageTitle") +"</h1>");
|
||||||
|
out.print("<h2>"+ getMessage("pageRole") +"</h2><p/>");
|
||||||
|
%>
|
||||||
|
|
||||||
|
<%= getLocaleChoice() %>
|
||||||
|
|
||||||
|
<%
|
||||||
|
out.print("<h3>"+ getMessage("neededComponents") +"</h3>");
|
||||||
|
%>
|
||||||
|
|
||||||
|
<UL>
|
||||||
|
<%
|
||||||
|
int needed=0,wanted=0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* the essentials, without these Axis is not going to work
|
||||||
|
*/
|
||||||
|
|
||||||
|
// need to check if the available version of SAAJ API meets requirements
|
||||||
|
String className = "javax.xml.soap.SOAPPart";
|
||||||
|
String interfaceName = "org.w3c.dom.Document";
|
||||||
|
Class clazz = classExists(className);
|
||||||
|
if (clazz == null || implementsInterface(clazz, interfaceName)) {
|
||||||
|
needed = needClass(out, "javax.xml.soap.SOAPMessage",
|
||||||
|
"saaj.jar",
|
||||||
|
"SAAJ API",
|
||||||
|
getMessage("criticalErrorMessage"),
|
||||||
|
"http://ws.apache.org/axis/");
|
||||||
|
} else {
|
||||||
|
String location = getLocation(out, clazz);
|
||||||
|
|
||||||
|
out.print(getMessage("invalidSAAJ",location));
|
||||||
|
out.print(getMessage("criticalErrorMessage"));
|
||||||
|
out.print(getMessage("seeHomepage","http://ws.apache.org/axis/java/install.html",getMessage("axisInstallation")));
|
||||||
|
out.print("<br>");
|
||||||
|
}
|
||||||
|
|
||||||
|
needed+=needClass(out, "javax.xml.rpc.Service",
|
||||||
|
"jaxrpc.jar",
|
||||||
|
"JAX-RPC API",
|
||||||
|
getMessage("criticalErrorMessage"),
|
||||||
|
"http://ws.apache.org/axis/");
|
||||||
|
|
||||||
|
needed+=needClass(out, "org.apache.axis.transport.http.AxisServlet",
|
||||||
|
"axis.jar",
|
||||||
|
"Apache-Axis",
|
||||||
|
getMessage("criticalErrorMessage"),
|
||||||
|
"http://ws.apache.org/axis/");
|
||||||
|
|
||||||
|
needed+=needClass(out, "org.apache.commons.discovery.Resource",
|
||||||
|
"commons-discovery.jar",
|
||||||
|
"Jakarta-Commons Discovery",
|
||||||
|
getMessage("criticalErrorMessage"),
|
||||||
|
"http://jakarta.apache.org/commons/discovery/");
|
||||||
|
|
||||||
|
needed+=needClass(out, "org.apache.commons.logging.Log",
|
||||||
|
"commons-logging.jar",
|
||||||
|
"Jakarta-Commons Logging",
|
||||||
|
getMessage("criticalErrorMessage"),
|
||||||
|
"http://jakarta.apache.org/commons/logging/");
|
||||||
|
|
||||||
|
needed+=needClass(out, "org.apache.log4j.Layout",
|
||||||
|
"log4j-1.2.8.jar",
|
||||||
|
"Log4j",
|
||||||
|
getMessage("uncertainErrorMessage"),
|
||||||
|
"http://jakarta.apache.org/log4j");
|
||||||
|
|
||||||
|
//should we search for a javax.wsdl file here, to hint that it needs
|
||||||
|
//to go into an approved directory? because we dont seem to need to do that.
|
||||||
|
needed+=needClass(out, "com.ibm.wsdl.factory.WSDLFactoryImpl",
|
||||||
|
"wsdl4j.jar",
|
||||||
|
"IBM's WSDL4Java",
|
||||||
|
getMessage("criticalErrorMessage"),
|
||||||
|
null);
|
||||||
|
|
||||||
|
needed+=needClass(out, "javax.xml.parsers.SAXParserFactory",
|
||||||
|
"xerces.jar",
|
||||||
|
"JAXP implementation",
|
||||||
|
getMessage("criticalErrorMessage"),
|
||||||
|
"http://xml.apache.org/xerces-j/");
|
||||||
|
|
||||||
|
needed+=needClass(out,"javax.activation.DataHandler",
|
||||||
|
"activation.jar",
|
||||||
|
"Activation API",
|
||||||
|
getMessage("criticalErrorMessage"),
|
||||||
|
"http://java.sun.com/products/javabeans/glasgow/jaf.html");
|
||||||
|
%>
|
||||||
|
</UL>
|
||||||
|
<%
|
||||||
|
out.print("<h3>"+ getMessage("optionalComponents") +"</h3>");
|
||||||
|
%>
|
||||||
|
<UL>
|
||||||
|
<%
|
||||||
|
/*
|
||||||
|
* now the stuff we can live without
|
||||||
|
*/
|
||||||
|
wanted+=wantClass(out,"javax.mail.internet.MimeMessage",
|
||||||
|
"mail.jar",
|
||||||
|
"Mail API",
|
||||||
|
getMessage("attachmentsError"),
|
||||||
|
"http://java.sun.com/products/javamail/");
|
||||||
|
|
||||||
|
wanted+=wantClass(out,"org.apache.xml.security.Init",
|
||||||
|
"xmlsec.jar",
|
||||||
|
"XML Security API",
|
||||||
|
getMessage("xmlSecurityError"),
|
||||||
|
"http://xml.apache.org/security/");
|
||||||
|
|
||||||
|
wanted += wantClass(out, "javax.net.ssl.SSLSocketFactory",
|
||||||
|
"jsse.jar or java1.4+ runtime",
|
||||||
|
"Java Secure Socket Extension",
|
||||||
|
getMessage("httpsError"),
|
||||||
|
"http://java.sun.com/products/jsse/");
|
||||||
|
/*
|
||||||
|
* resources on the classpath path
|
||||||
|
*/
|
||||||
|
/* add more libraries here */
|
||||||
|
|
||||||
|
%>
|
||||||
|
</UL>
|
||||||
|
<%
|
||||||
|
out.write("<h3>");
|
||||||
|
//is everythng we need here
|
||||||
|
if(needed==0) {
|
||||||
|
//yes, be happy
|
||||||
|
out.write(getMessage("happyResult00"));
|
||||||
|
} else {
|
||||||
|
//no, be very unhappy
|
||||||
|
response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
|
||||||
|
out.write(getMessage("unhappyResult00",Integer.toString(needed)));
|
||||||
|
}
|
||||||
|
//now look at wanted stuff
|
||||||
|
if(wanted>0) {
|
||||||
|
out.write(getMessage("unhappyResult01",Integer.toString(wanted)));
|
||||||
|
} else {
|
||||||
|
out.write(getMessage("happyResult01"));
|
||||||
|
}
|
||||||
|
out.write("</h3>");
|
||||||
|
%>
|
||||||
|
<UL>
|
||||||
|
<%
|
||||||
|
|
||||||
|
//hint if anything is missing
|
||||||
|
if(needed>0 || wanted>0 ) {
|
||||||
|
out.write(getMessage("hintString"));
|
||||||
|
}
|
||||||
|
|
||||||
|
out.write(getMessage("noteString"));
|
||||||
|
%>
|
||||||
|
</UL>
|
||||||
|
|
||||||
|
<h2><%= getMessage("apsExamining") %></h2>
|
||||||
|
|
||||||
|
<UL>
|
||||||
|
<%
|
||||||
|
String servletVersion=getServletVersion();
|
||||||
|
String xmlParser=getParserName();
|
||||||
|
String xmlParserLocation = getParserLocation(out);
|
||||||
|
%>
|
||||||
|
<table border="1" cellpadding="10">
|
||||||
|
<tr><td>Servlet version</td><td><%= servletVersion %></td></tr>
|
||||||
|
<tr><td>XML Parser</td><td><%= xmlParser %></td></tr>
|
||||||
|
<tr><td>XML ParserLocation</td><td><%= xmlParserLocation %></td></tr>
|
||||||
|
</table>
|
||||||
|
</UL>
|
||||||
|
|
||||||
|
<% if(xmlParser.indexOf("crimson")>=0) { %>
|
||||||
|
<p>
|
||||||
|
<%= getMessage("recommendedParser") %>
|
||||||
|
</p>
|
||||||
|
<% } %>
|
||||||
|
|
||||||
|
<h2><%= getMessage("sysExamining") %></h2>
|
||||||
|
<UL>
|
||||||
|
<%
|
||||||
|
/**
|
||||||
|
* Dump the system properties
|
||||||
|
*/
|
||||||
|
java.util.Enumeration e=null;
|
||||||
|
try {
|
||||||
|
e= System.getProperties().propertyNames();
|
||||||
|
} catch (SecurityException se) {
|
||||||
|
}
|
||||||
|
if(e!=null) {
|
||||||
|
out.write("<pre>");
|
||||||
|
for (;e.hasMoreElements();) {
|
||||||
|
String key = (String) e.nextElement();
|
||||||
|
out.write(key + "=" + System.getProperty(key)+"\n");
|
||||||
|
}
|
||||||
|
out.write("</pre><p>");
|
||||||
|
} else {
|
||||||
|
out.write(getMessage("sysPropError"));
|
||||||
|
}
|
||||||
|
%>
|
||||||
|
</UL>
|
||||||
|
<hr>
|
||||||
|
<%= getMessage("apsPlatform") %>:
|
||||||
|
<%= getServletConfig().getServletContext().getServerInfo() %>
|
||||||
|
</body>
|
||||||
|
</html>
|
223
services/additions/admin/axis/i18nLib.jsp
Normal file
223
services/additions/admin/axis/i18nLib.jsp
Normal file
|
@ -0,0 +1,223 @@
|
||||||
|
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
|
||||||
|
|
||||||
|
<%@ page import="java.util.*" %>
|
||||||
|
<%
|
||||||
|
/*
|
||||||
|
* Copyright 2005 The Apache Software Foundation.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
%>
|
||||||
|
|
||||||
|
<%!
|
||||||
|
/*
|
||||||
|
* A library file to produce i18n web applications. This can be easily
|
||||||
|
* reused from your jsp(s) - just include and call any methods.
|
||||||
|
* @author toshi
|
||||||
|
*/
|
||||||
|
|
||||||
|
// private variable
|
||||||
|
HttpServletRequest _req = null;
|
||||||
|
|
||||||
|
// private variable
|
||||||
|
String _strResourceName = null;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set a HttpServletRequest to a private variable.
|
||||||
|
* @param request HttpServletRequest
|
||||||
|
*/
|
||||||
|
void setRequest(HttpServletRequest request) {
|
||||||
|
_req = request;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the private variable of the HttpServletRequest.
|
||||||
|
* @return HttpServletRequest
|
||||||
|
*/
|
||||||
|
HttpServletRequest getRequest() {
|
||||||
|
return _req;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set a resouce base name to a private variable.
|
||||||
|
* @param resouce The resouce base name
|
||||||
|
*/
|
||||||
|
void setResouceBase(String resource) {
|
||||||
|
_strResourceName = resource;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the private variable of the resouce base name.
|
||||||
|
* @return resouce The resouce base name
|
||||||
|
*/
|
||||||
|
String getResouceBase() {
|
||||||
|
return _strResourceName;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a ResourceBundle object.
|
||||||
|
* @return a ResourceBundle object
|
||||||
|
*/
|
||||||
|
ResourceBundle getRB() {
|
||||||
|
String strLocale = getRequest().getParameter("locale");
|
||||||
|
ResourceBundle objRb = null;
|
||||||
|
Locale objLcl = null;
|
||||||
|
|
||||||
|
if (strLocale!=null) {
|
||||||
|
objLcl=new Locale(strLocale,"");
|
||||||
|
} else {
|
||||||
|
objLcl=getRequest().getLocale();
|
||||||
|
}
|
||||||
|
|
||||||
|
Locale.setDefault(objLcl);
|
||||||
|
objRb = ResourceBundle.getBundle(getResouceBase(),objLcl);
|
||||||
|
|
||||||
|
return objRb;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a list of locale choice
|
||||||
|
* @return a list of supported locales
|
||||||
|
*/
|
||||||
|
String getLocaleChoice() {
|
||||||
|
String choice = getMessage("locales");
|
||||||
|
StringBuffer buf = new StringBuffer();
|
||||||
|
|
||||||
|
buf.append("<div align=\"right\">\n");
|
||||||
|
buf.append(getMessage("language"));
|
||||||
|
buf.append(": ");
|
||||||
|
|
||||||
|
StringTokenizer st = new StringTokenizer(choice);
|
||||||
|
String locale = null;
|
||||||
|
while (st.hasMoreTokens()) {
|
||||||
|
locale = st.nextToken();
|
||||||
|
buf.append("[<a href=\"?locale="+ locale +"\">"+ locale +"</a>] ");
|
||||||
|
}
|
||||||
|
buf.append("\n</div>\n");
|
||||||
|
|
||||||
|
return buf.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a message from i18n.properties with several arguments.
|
||||||
|
* @param key The resource key
|
||||||
|
* @return The formatted message
|
||||||
|
*/
|
||||||
|
String getMessage(String key) {
|
||||||
|
return getMessage(key, null, null, null, null, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a message from i18n.properties with several arguments.
|
||||||
|
* @param key The resource key
|
||||||
|
* @param arg0 The argument to place in variable {0}
|
||||||
|
* @return The formatted message
|
||||||
|
*/
|
||||||
|
String getMessage(String key, String arg0) {
|
||||||
|
return getMessage(key, arg0, null, null, null, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a message from i18n.properties with several arguments.
|
||||||
|
* @param key The resource key
|
||||||
|
* @param arg0 The argument to place in variable {0}
|
||||||
|
* @param arg1 The argument to place in variable {1}
|
||||||
|
* @return The formatted message
|
||||||
|
*/
|
||||||
|
String getMessage(String key, String arg0, String arg1) {
|
||||||
|
return getMessage(key, arg0, arg1, null, null, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a message from i18n.properties with several arguments.
|
||||||
|
* @param key The resource key
|
||||||
|
* @param arg0 The argument to place in variable {0}
|
||||||
|
* @param arg1 The argument to place in variable {1}
|
||||||
|
* @param arg2 The argument to place in variable {2}
|
||||||
|
* @return The formatted message
|
||||||
|
*/
|
||||||
|
String getMessage(String key, String arg0, String arg1, String arg2) {
|
||||||
|
return getMessage(key, arg0, arg1, arg2, null, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a message from i18n.properties with several arguments.
|
||||||
|
* @param key The resource key
|
||||||
|
* @param arg0 The argument to place in variable {0}
|
||||||
|
* @param arg1 The argument to place in variable {1}
|
||||||
|
* @param arg2 The argument to place in variable {2}
|
||||||
|
* @param arg3 The argument to place in variable {3}
|
||||||
|
* @return The formatted message
|
||||||
|
*/
|
||||||
|
String getMessage(String key, String arg0, String arg1,
|
||||||
|
String arg2, String arg3) {
|
||||||
|
return getMessage(key, arg0, arg1, arg2, arg3, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a message from i18n.properties with several arguments.
|
||||||
|
* @param key The resource key
|
||||||
|
* @param arg0 The argument to place in variable {0}
|
||||||
|
* @param arg1 The argument to place in variable {1}
|
||||||
|
* @param arg2 The argument to place in variable {2}
|
||||||
|
* @param arg3 The argument to place in variable {3}
|
||||||
|
* @param arg4 The argument to place in variable {4}
|
||||||
|
* @return The formatted message
|
||||||
|
*/
|
||||||
|
String getMessage(String key, String arg0, String arg1,
|
||||||
|
String arg2, String arg3, String arg4) {
|
||||||
|
String strPattern = getRB().getString(key);
|
||||||
|
|
||||||
|
String [] params = { arg0, arg1, arg2, arg3, arg4 };
|
||||||
|
for (int i=0; i<5; i++) {
|
||||||
|
if (params[i]!=null) params[i]=replaceAll(params[i],"%20"," ");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (arg0!=null) strPattern = replaceAll(strPattern,"{0}",params[0]);
|
||||||
|
if (arg1!=null) strPattern = replaceAll(strPattern,"{1}",params[1]);
|
||||||
|
if (arg2!=null) strPattern = replaceAll(strPattern,"{2}",params[2]);
|
||||||
|
if (arg3!=null) strPattern = replaceAll(strPattern,"{3}",params[3]);
|
||||||
|
if (arg4!=null) strPattern = replaceAll(strPattern,"{4}",params[4]);
|
||||||
|
|
||||||
|
return strPattern;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a replaced string by the specified message.
|
||||||
|
* @param source The original message
|
||||||
|
* @param pattern The key message for replacing
|
||||||
|
* @param replace The message to place in the key variable - 'pattern'
|
||||||
|
* @return The replaced message
|
||||||
|
*/
|
||||||
|
String replaceAll(String source, String pattern, String replace)
|
||||||
|
{
|
||||||
|
int i=0;
|
||||||
|
boolean ret = false;
|
||||||
|
StringBuffer buf = new StringBuffer();
|
||||||
|
|
||||||
|
int lenSource = source.length();
|
||||||
|
int lenPattern = pattern.length();
|
||||||
|
|
||||||
|
for (i=0; i<lenSource; i++) {
|
||||||
|
ret = source.regionMatches(i, pattern, 0, lenPattern);
|
||||||
|
if (ret) {
|
||||||
|
buf.append(source.substring(0,i));
|
||||||
|
buf.append(replace);
|
||||||
|
buf.append(source.substring(i+lenPattern));
|
||||||
|
source = replaceAll(buf.toString(), pattern, replace);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return source;
|
||||||
|
}
|
||||||
|
%>
|
107
services/build.xml
Normal file
107
services/build.xml
Normal file
|
@ -0,0 +1,107 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
|
||||||
|
<!-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
|
||||||
|
|
||||||
|
<project name="vitroWebServices" basedir="../">
|
||||||
|
<property file="./config/globalbuild.properties"/>
|
||||||
|
|
||||||
|
<property name="axis.port" value="8080"/>
|
||||||
|
<property name="axis.server" value="localhost"/>
|
||||||
|
|
||||||
|
<property name="ws.dir" value="./services/"/>
|
||||||
|
<property name="ws.lib" value="${ws.dir}/lib"/>
|
||||||
|
<!-- notice this builds to the ${webapp.build} directory -->
|
||||||
|
<property name="ws.build" value="${webapp.build}"/>
|
||||||
|
|
||||||
|
<property name="compile.debug" value="true"/>
|
||||||
|
<property name="compile.deprecation" value="true" />
|
||||||
|
<property name="compile.optimize" value="true" />
|
||||||
|
|
||||||
|
<path id="axis.classpath">
|
||||||
|
<!-- need to include the classes directory so that axis can
|
||||||
|
find the necessary compiled classes -->
|
||||||
|
<pathelement path="${ws.build}/WEB-INF/classes"/>
|
||||||
|
<fileset dir="${ws.lib}">
|
||||||
|
<include name="**/*.jar" />
|
||||||
|
</fileset>
|
||||||
|
</path>
|
||||||
|
|
||||||
|
<!-- ==================== Compilation Classpath =========================== -->
|
||||||
|
|
||||||
|
<path id="webservices-compile.classpath">
|
||||||
|
<pathelement location="${core.build.jar}"/>
|
||||||
|
<fileset dir="${ws.lib}">
|
||||||
|
<include name="**/*.jar"/>
|
||||||
|
</fileset>
|
||||||
|
<fileset dir="${webapp.lib}">
|
||||||
|
<include name="**/*.jar"/>
|
||||||
|
</fileset>
|
||||||
|
</path>
|
||||||
|
|
||||||
|
<!-- ================== set up the ant axis tasks ================ -->
|
||||||
|
<taskdef resource="axis-tasks.properties" classpathref="axis.classpath" />
|
||||||
|
|
||||||
|
<!-- ==================== Compile task ==================== -->
|
||||||
|
<target name="compile"
|
||||||
|
description="compiles code for webservices into webapp build dir" >
|
||||||
|
<depend srcdir="${ws.dir}/src" destdir="${ws.build}/WEB-INF/classes" cache=".depcache"/>
|
||||||
|
<ant antfile="${webapp.dir}/build.xml" target="compile"/>
|
||||||
|
|
||||||
|
<echo>Compile webservices</echo>
|
||||||
|
<javac srcdir="${ws.dir}/src" destdir="${ws.build}/WEB-INF/classes"
|
||||||
|
debug="${compile.debug}" deprecation="${compile.deprecation}"
|
||||||
|
optimize="${compile.optimize}" source="1.5">
|
||||||
|
<classpath refid="webservices-compile.classpath"/>
|
||||||
|
<!--<compilerarg value="-Xlint:unchecked"/> -->
|
||||||
|
</javac>
|
||||||
|
<antcall target="copyFiles"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ==================== copyFiles task ==================== -->
|
||||||
|
<target name="copyFiles" description="add files to the webapp build">
|
||||||
|
<copy todir="${ws.build}/WEB-INF/lib">
|
||||||
|
<fileset dir="${ws.lib}">
|
||||||
|
<exclude name="*.LCK"/>
|
||||||
|
<exclude name=".svn"/>
|
||||||
|
</fileset>
|
||||||
|
</copy>
|
||||||
|
<copy todir="${ws.build}">
|
||||||
|
<fileset dir="${ws.dir}/additions" >
|
||||||
|
<exclude name="*.LCK"/>
|
||||||
|
<exclude name="**/.svn"/>
|
||||||
|
<exclude name=".svn"/>
|
||||||
|
<exclude name="log4j.properties"/>
|
||||||
|
<exclude name="README.txt"/>
|
||||||
|
</fileset>
|
||||||
|
</copy>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ==================== setupWs task ==================== -->
|
||||||
|
<target name="setupWs"
|
||||||
|
description="invoke axis admin to deploy and expose VitroWs">
|
||||||
|
<!-- Notice that this can be run from the command line too:
|
||||||
|
$ java org.apache.axis.client.AdminClient \
|
||||||
|
-lhttp://localhost:8080/vivo/services/AdminService deploy.wsdd -->
|
||||||
|
<axis-admin
|
||||||
|
port="${axis.port}"
|
||||||
|
hostname="${axis.server}"
|
||||||
|
failonerror="true"
|
||||||
|
servletpath="${webapp.name}/services/AdminService"
|
||||||
|
debug="true"
|
||||||
|
xmlfile="${ws.wsdd.dir}/VitroWs3.wsdd" />
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ==================== java2wsdl task ==================== -->
|
||||||
|
<target name="java2wsdl" description="turn java classes into wsdl">
|
||||||
|
<axis-java2wsdl
|
||||||
|
classname="edu.cornell.mannlib.vitro.webapp.dao.VitroFacade"
|
||||||
|
location="http://localhost:8080/"
|
||||||
|
methods="entityById"
|
||||||
|
namespace="info:edu.cornell.mannlib.vitro"
|
||||||
|
output="./xml/wsdl/output.txt" >
|
||||||
|
<mapping namespace="info:db" package="edu.cornell.mannlib.vitro.db"/>
|
||||||
|
<mapping namespace="info:dao" package="edu.cornell.mannlib.vitro.db.dao"/>
|
||||||
|
</axis-java2wsdl>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
</project>
|
BIN
services/lib/axis-ant.jar
Normal file
BIN
services/lib/axis-ant.jar
Normal file
Binary file not shown.
BIN
services/lib/axis.jar
Normal file
BIN
services/lib/axis.jar
Normal file
Binary file not shown.
BIN
services/lib/commons-discovery-0.2.jar
Normal file
BIN
services/lib/commons-discovery-0.2.jar
Normal file
Binary file not shown.
BIN
services/lib/commons-logging-1.0.4.jar
Normal file
BIN
services/lib/commons-logging-1.0.4.jar
Normal file
Binary file not shown.
BIN
services/lib/jaxrpc.jar
Normal file
BIN
services/lib/jaxrpc.jar
Normal file
Binary file not shown.
BIN
services/lib/saaj.jar
Normal file
BIN
services/lib/saaj.jar
Normal file
Binary file not shown.
BIN
services/lib/wsdl4j-1.5.1.jar
Normal file
BIN
services/lib/wsdl4j-1.5.1.jar
Normal file
Binary file not shown.
184
services/src/edu/cornell/mannlib/vitro/webservices/VitroWs.java
Normal file
184
services/src/edu/cornell/mannlib/vitro/webservices/VitroWs.java
Normal file
|
@ -0,0 +1,184 @@
|
||||||
|
package edu.cornell.mannlib.vitro.webservices;
|
||||||
|
|
||||||
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.ApplicationBean;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.DataPropertyStatement;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.Individual;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.ObjectProperty;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.ObjectPropertyStatement;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.Tab;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.dao.TabDao;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.dao.WebappDaoFactory;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.dao.filtering.VitroFilters;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.dao.filtering.WebappDaoFactoryFiltering;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.utils.VitroFilterFactory;
|
||||||
|
import org.apache.axis.MessageContext;
|
||||||
|
import org.apache.axis.transport.http.HTTPConstants;
|
||||||
|
|
||||||
|
import javax.servlet.ServletContext;
|
||||||
|
import javax.servlet.http.HttpServlet;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.Iterator;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.ListIterator;
|
||||||
|
|
||||||
|
/**
|
||||||
|
|
||||||
|
* This is exposed by apache axis to provide a web service where folks can
|
||||||
|
* get tabs and simple entities. Jim doesn't seem to be using the properties so
|
||||||
|
* they are commented out.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* Created: Wed Aug 16 11:36:15 2006
|
||||||
|
* @version 1.0
|
||||||
|
*/
|
||||||
|
public class VitroWs {
|
||||||
|
//private VitroFacade vf;
|
||||||
|
private WebappDaoFactory webDaoFactory;
|
||||||
|
private ApplicationBean appBean;
|
||||||
|
|
||||||
|
public VitroWs() {
|
||||||
|
//System.out.println("is this even getting deployed?");
|
||||||
|
//wow, this is how to get a servlet context in axis.
|
||||||
|
HttpServlet srv =
|
||||||
|
(HttpServlet)MessageContext.getCurrentContext().getProperty(HTTPConstants.MC_HTTP_SERVLET);
|
||||||
|
ServletContext context = srv.getServletContext();
|
||||||
|
//vf = VitroDataSourceSetup.getFacade(context);
|
||||||
|
webDaoFactory = (WebappDaoFactory)context.getAttribute("webappDaoFactory");
|
||||||
|
|
||||||
|
appBean = new ApplicationBean(); //is this the correct way to get one of these?
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Gets a tab with related entities. The returned Tab does not have
|
||||||
|
child tab list filled.
|
||||||
|
*/
|
||||||
|
public Tab getFullTab(int tabid, int portalid, int depth, boolean withEntities){
|
||||||
|
Tab tab = null;
|
||||||
|
//System.out.println("is this even getting deployed?");
|
||||||
|
VitroFilters dateFilter = VitroFilterFactory.getSunsetWindowFilter(new Date());
|
||||||
|
|
||||||
|
WebappDaoFactory wdf = new WebappDaoFactoryFiltering(webDaoFactory, dateFilter);
|
||||||
|
TabDao tabdao= wdf.getTabDao();
|
||||||
|
tab = tabdao.getTab(tabid, PUBLIC_AUTH_LEVEL,appBean, depth);
|
||||||
|
|
||||||
|
if( withEntities )
|
||||||
|
tab.setRelatedEntityList(tab.getRelatedEntityList(null));//null indicates no alpha filtering
|
||||||
|
else
|
||||||
|
tab.setRelatedEntityList(Collections.EMPTY_LIST);
|
||||||
|
|
||||||
|
strip(tab);
|
||||||
|
tab.placeEntityFactory(null);
|
||||||
|
return tab;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Gets Entity with properties filled out. */
|
||||||
|
public Individual getFullEntityById(String entityUri, int portalid){
|
||||||
|
//System.out.println("is this even getting deployed?");
|
||||||
|
//IndividualWebapp entity = vf.entityById(entityId);
|
||||||
|
Individual entity = webDaoFactory.getIndividualDao().getIndividualByURI( entityUri );
|
||||||
|
setUpEntity(entity);
|
||||||
|
setUpDescription(entity);
|
||||||
|
return entity;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List getTabsForPortal( int portalid ){
|
||||||
|
//System.out.println("is this even getting deployed?");
|
||||||
|
//return vf.getTabsForPortal(portalid);
|
||||||
|
return webDaoFactory.getTabDao().getTabsForPortal(portalid);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setUpEntity(Individual entity){
|
||||||
|
// //webDaoFactory.getCoreDaoFactory().getEnts2EntsDao().fillExistingEnts2Ents( entity ); //this may filter entitys in the ents2ents list
|
||||||
|
// //webDaoFactory.getPropertyWebappDao().fillEntityProperties( entity );
|
||||||
|
|
||||||
|
//webDaoFactory.getDataPropertyStatementDao().fillExistingDataPropertyStatementsForIndividual( entity );
|
||||||
|
|
||||||
|
webDaoFactory.getObjectPropertyStatementDao().fillExistingObjectPropertyStatements(entity);
|
||||||
|
webDaoFactory.getIndividualDao().fillVClassForIndividual( entity );
|
||||||
|
webDaoFactory.getLinksDao().addLinksToIndividual( entity );
|
||||||
|
entity.setKeywords(webDaoFactory.getIndividualDao().getKeywordsForIndividual(entity.getURI()));
|
||||||
|
|
||||||
|
// jc55 causes problems with web services if populated
|
||||||
|
entity.setHiddenFromDisplayBelowRoleLevel(null);
|
||||||
|
entity.setProhibitedFromUpdateBelowRoleLevel(null);
|
||||||
|
// //entity.sortForDisplay();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set entity up with a description from data props if there is none.
|
||||||
|
*
|
||||||
|
* @param entity
|
||||||
|
*/
|
||||||
|
private void setUpDescription(Individual entity) {
|
||||||
|
if( entity != null &&
|
||||||
|
(entity.getDescription() == null || entity.getDescription().length() == 0)){
|
||||||
|
//if there is nothing in the desc then try to get a dataprop and stick that in the desc
|
||||||
|
List e2d = entity.getDataPropertyStatements();
|
||||||
|
if( e2d != null && e2d.size() > 0 ){
|
||||||
|
Iterator it = e2d.iterator();
|
||||||
|
while(it.hasNext()){
|
||||||
|
DataPropertyStatement data = (DataPropertyStatement) it.next();
|
||||||
|
if( RESEARCH_FOCUS_DATAPROP_URI.equals( data.getDatapropURI() )
|
||||||
|
&& data.getData() != null && data.getData().length() > 0 ){
|
||||||
|
entity.setDescription(data.getData());
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void strip(Tab tab){
|
||||||
|
if( tab == null ) return;
|
||||||
|
if( tab.getChildTabs() != null ){
|
||||||
|
for( Tab childTab : tab.getChildTabs()){
|
||||||
|
childTab.setChildTabs(null);
|
||||||
|
childTab.setRelatedEntityList(Collections.EMPTY_LIST);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if( tab.getRelatedEntities() != null ){
|
||||||
|
for( Individual ind : tab.getRelatedEntities()){
|
||||||
|
strip(ind);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void strip(Individual ind){
|
||||||
|
webDaoFactory.getObjectPropertyDao().fillObjectPropertiesForIndividual(ind);
|
||||||
|
|
||||||
|
List<ObjectProperty> props = ind.getObjectPropertyList();
|
||||||
|
|
||||||
|
if( props != null && props.size() > 0 ){
|
||||||
|
ListIterator<ObjectProperty> iterator = props.listIterator();
|
||||||
|
while(iterator.hasNext()){
|
||||||
|
ObjectProperty prop= iterator.next();
|
||||||
|
|
||||||
|
// jc55 unlikely to be the source of the problem, but try anyway
|
||||||
|
prop.setProhibitedFromUpdateBelowRoleLevel(null);
|
||||||
|
prop.setHiddenFromDisplayBelowRoleLevel(null);
|
||||||
|
|
||||||
|
if(! ( HAS_TEACHER.equals( prop.getURI() )
|
||||||
|
|| IN_SEMESTER.equals( prop.getURI()) )){
|
||||||
|
iterator.remove();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ind.setDatatypePropertyList(Collections.EMPTY_LIST);
|
||||||
|
ind.setDataPropertyStatements(Collections.EMPTY_LIST);
|
||||||
|
ind.setKeywords(Collections.EMPTY_LIST);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
final int PUBLIC_AUTH_LEVEL = 0;
|
||||||
|
final String RESEARCH_FOCUS_DATAPROP_URI = "http://vivo.library.cornell.edu/ns/0.1#researchFocus";
|
||||||
|
|
||||||
|
final String HAS_TEACHER = "http://vivo.library.cornell.edu/ns/0.1#SemesterCourseHasTeacherPerson";
|
||||||
|
final String IN_SEMESTER = "http://vivo.library.cornell.edu/ns/0.1#SemesterCourseOccursInSemester";
|
||||||
|
}
|
|
@ -0,0 +1,15 @@
|
||||||
|
;; Object webservices/
|
||||||
|
;; SEMANTICDB Tags save file
|
||||||
|
(semanticdb-project-database-file "webservices/"
|
||||||
|
:tables (list
|
||||||
|
(semanticdb-table "VitroWs.java"
|
||||||
|
:major-mode 'jde-mode
|
||||||
|
:tags '(("edu.cornell.mannlib.vitro.webservices" package nil nil [1 47]) ("edu.cornell.mannlib.vitro.db.dao.VitroFacade" include nil nil [49 101]) ("edu.cornell.mannlib.vitro.beans.Tab" include nil nil [102 145]) ("edu.cornell.mannlib.vitro.flags.PortalFlag" include nil nil [146 196]) ("formbeans.ApplicationBean" include nil nil [197 230]) ("edu.cornell.mannlib.vitro.beans.Entity" include nil nil [231 277]) ("java.util.List" include nil nil [278 300]) ("VitroWs" type (:typemodifiers ("public") :members (("VitroWs" function (:constructor-flag t :typemodifiers ("public")) (reparse-symbol class_member_declaration) [394 413]) ("getFullTab" function (:typemodifiers ("public") :arguments (("tabid" variable (:type "int") (reparse-symbol formal_parameters) [559 568]) ("portalid" variable (:type "int") (reparse-symbol formal_parameters) [570 582])) :type "Tab") (reparse-symbol class_member_declaration) [537 848]) ("getFullEntityById" function (:typemodifiers ("public") :arguments (("entityId" variable (:type "int") (reparse-symbol formal_parameters) [948 960]) ("portalid" variable (:type "int") (reparse-symbol formal_parameters) [962 974])) :type "Entity") (reparse-symbol class_member_declaration) [916 1175]) ("getTabsForPortal" function (:typemodifiers ("public") :arguments (("portalid" variable (:type "int") (reparse-symbol formal_parameters) [1211 1223])) :type "List") (reparse-symbol class_member_declaration) [1181 1330])) :type "class") nil [366 1532]))
|
||||||
|
:file "VitroWs.java"
|
||||||
|
:pointmax 1533
|
||||||
|
)
|
||||||
|
)
|
||||||
|
:file "semantic.cache"
|
||||||
|
:semantic-tag-version "2.0pre3"
|
||||||
|
:semanticdb-version "2.0pre3"
|
||||||
|
)
|
|
@ -0,0 +1,29 @@
|
||||||
|
package edu.cornell.mannlib.vitro.webservices.serializers;
|
||||||
|
|
||||||
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
|
import org.apache.axis.Constants;
|
||||||
|
import org.apache.axis.encoding.SerializerFactory;
|
||||||
|
|
||||||
|
import java.util.Iterator;
|
||||||
|
import java.util.Vector;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* * This is used to by the axis webservices. see vitro/webservices/wsdd/VitroWs.wsdd
|
||||||
|
*/
|
||||||
|
public class EntitySerFactory implements SerializerFactory {
|
||||||
|
private Vector mechanisms;
|
||||||
|
|
||||||
|
public EntitySerFactory() {
|
||||||
|
}
|
||||||
|
public javax.xml.rpc.encoding.Serializer getSerializerAs(String mechanismType) {
|
||||||
|
return new EntitySerializer();
|
||||||
|
}
|
||||||
|
public Iterator getSupportedMechanismTypes() {
|
||||||
|
if (mechanisms == null) {
|
||||||
|
mechanisms = new Vector();
|
||||||
|
mechanisms.add(Constants.AXIS_SAX);
|
||||||
|
}
|
||||||
|
return mechanisms.iterator();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,152 @@
|
||||||
|
package edu.cornell.mannlib.vitro.webservices.serializers;
|
||||||
|
|
||||||
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.Individual;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.ObjectProperty;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.ObjectPropertyStatement;
|
||||||
|
import org.apache.axis.Constants;
|
||||||
|
import org.apache.axis.encoding.SerializationContext;
|
||||||
|
import org.apache.axis.encoding.Serializer;
|
||||||
|
import org.apache.axis.wsdl.fromJava.Types;
|
||||||
|
import org.w3c.dom.Element;
|
||||||
|
import org.xml.sax.Attributes;
|
||||||
|
|
||||||
|
import javax.xml.namespace.QName;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.Iterator;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* WARNING: SUPER AWFUL, OBJECT ORIENTED NO-NO'S AHEAD
|
||||||
|
* -- !serializing an entity will change it! --
|
||||||
|
* * This is used to by the axis webservices. see vitro/webservices/wsdd/VitroWs.wsdd
|
||||||
|
*/
|
||||||
|
public class EntitySerializer implements Serializer {
|
||||||
|
public static final QName myTypeQName = new QName("typeNS", "VitroEntity");
|
||||||
|
|
||||||
|
public static final String ID_MBER = "id";
|
||||||
|
public static final String NAME_MBER= "name";
|
||||||
|
public static final String MONIKER_MBER= "moniker";
|
||||||
|
public static final String VCLASS_MBER= "vClass";
|
||||||
|
public static final String URL_MBER= "url";
|
||||||
|
public static final String DESCRIPTION_MBER= "description";
|
||||||
|
public static final String SUNRISE_MBER= "sunrise";
|
||||||
|
public static final String SUNSET_MBER= "sunset";
|
||||||
|
public static final String TIMEKEY_MBER= "timekey";
|
||||||
|
//public static final String MODTIME_MBER= "modTime";
|
||||||
|
public static final String IMAGEFILE_MBER= "imageFile";
|
||||||
|
public static final String ANCHOR_MBER= "anchor";
|
||||||
|
public static final String BLURB_MBER= "blurb";
|
||||||
|
public static final String IMAGETHUMB_MBER= "imageThumb";
|
||||||
|
public static final String CITATION_MBER= "citation";
|
||||||
|
public static final String STATUS_MBER= "status";
|
||||||
|
public static final String PROPERTYLIST_MBER= "propertyList";
|
||||||
|
public static final String LINKSLIST_MBER= "linksList";
|
||||||
|
public static final String KEYWORDS_MBER="keywords";
|
||||||
|
public static final String VCLASSID_MBER= "vClassId";
|
||||||
|
|
||||||
|
/** this is not on the original Entity object */
|
||||||
|
public static final String RELATED_ENTITIES_MBER ="relatedEntities";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Serialize an element named name, with the indicated attributes
|
||||||
|
* and value.
|
||||||
|
* @param name is the element name
|
||||||
|
* @param attributes are the attributes...serialize is free to add more.
|
||||||
|
* @param value is the value
|
||||||
|
* @param context is the SerializationContext
|
||||||
|
*/
|
||||||
|
public void serialize(QName name, Attributes attributes,
|
||||||
|
Object value, SerializationContext context)
|
||||||
|
throws IOException
|
||||||
|
{
|
||||||
|
if (!(value instanceof Individual))
|
||||||
|
throw new IOException("Can't serialize a " + value.getClass().getName() + " with a EntitySerializer.");
|
||||||
|
Individual ent = (Individual)value;
|
||||||
|
|
||||||
|
// jc55 causes problems with web services if populated
|
||||||
|
ent.setHiddenFromDisplayBelowRoleLevel(null);
|
||||||
|
ent.setProhibitedFromUpdateBelowRoleLevel(null);
|
||||||
|
|
||||||
|
context.startElement(name, attributes);
|
||||||
|
|
||||||
|
prepareForSerialization( ent );
|
||||||
|
|
||||||
|
context.serialize(new QName("", ID_MBER), null, ent.getURI());
|
||||||
|
context.serialize(new QName("", NAME_MBER), null, ent.getName());
|
||||||
|
context.serialize(new QName("", MONIKER_MBER), null, ent.getMoniker());
|
||||||
|
context.serialize(new QName("", VCLASS_MBER), null, ent.getVClass());
|
||||||
|
context.serialize(new QName("", URL_MBER), null, ent.getUrl());
|
||||||
|
context.serialize(new QName("", DESCRIPTION_MBER), null, ent.getDescription());
|
||||||
|
context.serialize(new QName("", SUNRISE_MBER), null, ent.getSunrise());
|
||||||
|
context.serialize(new QName("", SUNSET_MBER), null, ent.getSunset());
|
||||||
|
context.serialize(new QName("", TIMEKEY_MBER), null, ent.getTimekey());
|
||||||
|
context.serialize(new QName("", IMAGEFILE_MBER), null, ent.getImageFile());
|
||||||
|
context.serialize(new QName("", ANCHOR_MBER), null, ent.getAnchor());
|
||||||
|
context.serialize(new QName("", BLURB_MBER), null, ent.getBlurb());
|
||||||
|
context.serialize(new QName("", IMAGETHUMB_MBER), null, ent.getImageThumb());
|
||||||
|
context.serialize(new QName("", CITATION_MBER), null, ent.getCitation());
|
||||||
|
context.serialize(new QName("", STATUS_MBER), null, ent.getStatus());
|
||||||
|
context.serialize(new QName("", LINKSLIST_MBER), null, ent.getLinksList());
|
||||||
|
context.serialize(new QName("", KEYWORDS_MBER), null, ent.getKeywords());
|
||||||
|
context.serialize(new QName("", VCLASSID_MBER), null, ent.getVClassURI());
|
||||||
|
|
||||||
|
//after the minimize this should only have property->ents2ent with no Entity objs.
|
||||||
|
context.serialize(new QName("", PROPERTYLIST_MBER), null, ent.getObjectPropertyList());
|
||||||
|
|
||||||
|
context.endElement();
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMechanismType() { return Constants.AXIS_SAX; }
|
||||||
|
|
||||||
|
public Element writeSchema(Class javaType, Types types) throws Exception {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 1) reflects props and ents2ents domainside,
|
||||||
|
* 2) sorts
|
||||||
|
* 3) removed domain Entity object from all ents2ents
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private final void prepareForSerialization(final Individual ent){
|
||||||
|
if( ent == null || ent.getObjectPropertyList() == null) return;
|
||||||
|
|
||||||
|
ent.sortForDisplay();
|
||||||
|
//ent.forceAllPropertiesDomainSide();
|
||||||
|
|
||||||
|
Iterator it = ent.getObjectPropertyList().iterator();
|
||||||
|
while(it.hasNext()){
|
||||||
|
ObjectProperty prop = (ObjectProperty)it.next();
|
||||||
|
prepareProperty(prop);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* calls prepareEnts2Ents on each ents2ents of Property
|
||||||
|
*/
|
||||||
|
private final void prepareProperty(final ObjectProperty prop){
|
||||||
|
if( prop == null || prop.getObjectPropertyStatements() == null ) return;
|
||||||
|
|
||||||
|
Iterator it = prop.getObjectPropertyStatements().iterator();
|
||||||
|
while(it.hasNext()){
|
||||||
|
prepareEnts2Ents((ObjectPropertyStatement)it.next());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private final void prepareEnts2Ents(final ObjectPropertyStatement e2e ){
|
||||||
|
if( e2e != null){
|
||||||
|
e2e.setSubject(null);
|
||||||
|
e2e.setProperty(null);
|
||||||
|
|
||||||
|
//we don't want to serialize any deeper
|
||||||
|
Individual objInd = e2e.getObject();
|
||||||
|
objInd.setObjectPropertyStatements(Collections.EMPTY_LIST);
|
||||||
|
objInd.setDataPropertyStatements(Collections.EMPTY_LIST);
|
||||||
|
objInd.setPropertyList(Collections.EMPTY_LIST);
|
||||||
|
objInd.setDatatypePropertyList(Collections.EMPTY_LIST);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,29 @@
|
||||||
|
package edu.cornell.mannlib.vitro.webservices.serializers;
|
||||||
|
|
||||||
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
|
import org.apache.axis.Constants;
|
||||||
|
import org.apache.axis.encoding.SerializerFactory;
|
||||||
|
|
||||||
|
import java.util.Iterator;
|
||||||
|
import java.util.Vector;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* * This is used to by the axis webservices. see vitro/webservices/wsdd/VitroWs.wsdd
|
||||||
|
*/
|
||||||
|
public class Ents2EntsSerFactory implements SerializerFactory {
|
||||||
|
private Vector mechanisms;
|
||||||
|
|
||||||
|
public Ents2EntsSerFactory() {
|
||||||
|
}
|
||||||
|
public javax.xml.rpc.encoding.Serializer getSerializerAs(String mechanismType) {
|
||||||
|
return new Ents2EntsSerializer();
|
||||||
|
}
|
||||||
|
public Iterator getSupportedMechanismTypes() {
|
||||||
|
if (mechanisms == null) {
|
||||||
|
mechanisms = new Vector();
|
||||||
|
mechanisms.add(Constants.AXIS_SAX);
|
||||||
|
}
|
||||||
|
return mechanisms.iterator();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,111 @@
|
||||||
|
package edu.cornell.mannlib.vitro.webservices.serializers;
|
||||||
|
|
||||||
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.Individual;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.ObjectPropertyStatement;
|
||||||
|
import org.apache.axis.Constants;
|
||||||
|
import org.apache.axis.encoding.SerializationContext;
|
||||||
|
import org.apache.axis.encoding.Serializer;
|
||||||
|
import org.apache.axis.wsdl.fromJava.Types;
|
||||||
|
import org.w3c.dom.Element;
|
||||||
|
import org.xml.sax.Attributes;
|
||||||
|
|
||||||
|
import javax.xml.namespace.QName;
|
||||||
|
import java.io.IOException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This is used to by the axis webservices. see vitro/webservices/wsdd/VitroWs.wsdd
|
||||||
|
*/
|
||||||
|
public class Ents2EntsSerializer implements Serializer {
|
||||||
|
public static final QName myTypeQName = new QName("typeNS", "VitroEntity");
|
||||||
|
|
||||||
|
public static final String ENTS2ENTSID_MBER = "ents2entsId";
|
||||||
|
public static final String DOMAINID_MBER = "domainId";
|
||||||
|
public static final String DOMAIN_MBER = "domain";
|
||||||
|
public static final String RANGEID_MBER = "rangeId";
|
||||||
|
public static final String RANGE_MBER = "range";
|
||||||
|
public static final String PROPERTYID_MBER = "propertyId";
|
||||||
|
public static final String PROPERTY_MBER = "property";
|
||||||
|
public static final String QUALIFIER_MBER = "qualifier";
|
||||||
|
public static final String DOMAINORIENTED_MBER = "domainOriented";
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Serialize an element named name, with the indicated attributes
|
||||||
|
* and value.
|
||||||
|
* @param name is the element name
|
||||||
|
* @param attributes are the attributes...serialize is free to add more.
|
||||||
|
* @param value is the value
|
||||||
|
* @param context is the SerializationContext
|
||||||
|
*/
|
||||||
|
public void serialize(QName name, Attributes attributes,
|
||||||
|
Object value, SerializationContext context)
|
||||||
|
throws IOException
|
||||||
|
{
|
||||||
|
if (!(value instanceof ObjectPropertyStatement))
|
||||||
|
throw new IOException("Can't serialize a " + value.getClass().getName() + " with a Ents2EntsSerializer.");
|
||||||
|
ObjectPropertyStatement e2e = (ObjectPropertyStatement)value;
|
||||||
|
context.startElement(name, attributes);
|
||||||
|
|
||||||
|
//context.serialize(new QName("", ENTS2ENTSID_MBER), null, e2e.getEnts2entsId());
|
||||||
|
//context.serialize(new QName("", DOMAINID_MBER), null, e2e.getDomainId());
|
||||||
|
//context.serialize(new QName("", DOMAIN_MBER), null, e2e.getDomain());
|
||||||
|
context.serialize(new QName("", RANGEID_MBER), null, e2e.getObjectURI());
|
||||||
|
|
||||||
|
//we don't want to serialize any further.
|
||||||
|
Individual object = e2e.getObject();
|
||||||
|
object.setObjectPropertyStatements(null);
|
||||||
|
context.serialize(new QName("", RANGE_MBER), null, object);
|
||||||
|
|
||||||
|
//context.serialize(new QName("", PROPERTYID_MBER), null, e2e.getPropertyId());
|
||||||
|
//context.serialize(new QName("", PROPERTY_MBER), null, e2e.getProperty());
|
||||||
|
context.serialize(new QName("", QUALIFIER_MBER), null, e2e.getQualifier());
|
||||||
|
|
||||||
|
context.endElement();
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMechanismType() { return Constants.AXIS_SAX; }
|
||||||
|
|
||||||
|
public Element writeSchema(Class javaType, Types types) throws Exception {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
// /**
|
||||||
|
// * 1) reflects props and ents2ents domainside,
|
||||||
|
// * 2) sorts
|
||||||
|
// * 3) removed domain Entity object from all ents2ents
|
||||||
|
// *
|
||||||
|
// */
|
||||||
|
// private final void prepareForSerialization(final Entity ent){
|
||||||
|
// if( ent == null || ent.getPropertyList() == null) return;
|
||||||
|
|
||||||
|
// ent.sortForDisplay();
|
||||||
|
// ent.forceAllPropertiesDomainSide();
|
||||||
|
|
||||||
|
// Iterator it = ent.getPropertyList().iterator();
|
||||||
|
// while(it.hasNext()){
|
||||||
|
// Property prop = (Property)it.next();
|
||||||
|
// prepareProperty(prop);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
// /**
|
||||||
|
// * calls prepareEnts2Ents on each ents2ents of Property
|
||||||
|
// */
|
||||||
|
// private final void prepareProperty(final Property prop){
|
||||||
|
// if( prop == null || prop.getEnts2Ents() == null ) return;
|
||||||
|
|
||||||
|
// Iterator it = prop.getEnts2Ents().iterator();
|
||||||
|
// while(it.hasNext()){
|
||||||
|
// prepareEnts2Ents((Ents2Ents)it.next());
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
// private final void prepareEnts2Ents(final Ents2Ents e2e ){
|
||||||
|
// if( e2e != null){
|
||||||
|
// e2e.setDomain(null);
|
||||||
|
// e2e.setProperty(null);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
}
|
|
@ -0,0 +1,29 @@
|
||||||
|
package edu.cornell.mannlib.vitro.webservices.serializers;
|
||||||
|
|
||||||
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
|
import org.apache.axis.Constants;
|
||||||
|
import org.apache.axis.encoding.SerializerFactory;
|
||||||
|
|
||||||
|
import java.util.Iterator;
|
||||||
|
import java.util.Vector;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* * This is used to by the axis webservices. see vitro/webservices/wsdd/VitroWs.wsdd
|
||||||
|
*/
|
||||||
|
public class EshipRetroObjectPropertySerFactory implements SerializerFactory {
|
||||||
|
private Vector mechanisms;
|
||||||
|
|
||||||
|
public EshipRetroObjectPropertySerFactory () {
|
||||||
|
}
|
||||||
|
public javax.xml.rpc.encoding.Serializer getSerializerAs(String mechanismType) {
|
||||||
|
return new EshipRetroObjectPropertySerializer();
|
||||||
|
}
|
||||||
|
public Iterator getSupportedMechanismTypes() {
|
||||||
|
if (mechanisms == null) {
|
||||||
|
mechanisms = new Vector();
|
||||||
|
mechanisms.add(Constants.AXIS_SAX);
|
||||||
|
}
|
||||||
|
return mechanisms.iterator();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,78 @@
|
||||||
|
package edu.cornell.mannlib.vitro.webservices.serializers;
|
||||||
|
|
||||||
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.Individual;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.ObjectPropertyStatement;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.ObjectProperty;
|
||||||
|
import org.apache.axis.Constants;
|
||||||
|
import org.apache.axis.encoding.SerializationContext;
|
||||||
|
import org.apache.axis.encoding.Serializer;
|
||||||
|
import org.apache.axis.wsdl.fromJava.Types;
|
||||||
|
import org.w3c.dom.Element;
|
||||||
|
import org.xml.sax.Attributes;
|
||||||
|
|
||||||
|
import javax.xml.namespace.QName;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This is used to by the axis webservices. see vitro/webservices/wsdd/VitroWs.wsdd
|
||||||
|
*/
|
||||||
|
public class EshipRetroObjectPropertySerializer implements Serializer {
|
||||||
|
public static final QName myTypeQName = new QName("typeNS", "VitroEntity");
|
||||||
|
|
||||||
|
public static final String ENTS2ENTSID_MBER = "ents2entsId";
|
||||||
|
public static final String DOMAINID_MBER = "domainId";
|
||||||
|
public static final String DOMAIN_MBER = "domain";
|
||||||
|
public static final String RANGEID_MBER = "rangeId";
|
||||||
|
public static final String RANGE_MBER = "range";
|
||||||
|
public static final String PROPERTYID_MBER = "propertyId";
|
||||||
|
public static final String PROPERTY_MBER = "property";
|
||||||
|
public static final String QUALIFIER_MBER = "qualifier";
|
||||||
|
public static final String DOMAINORIENTED_MBER = "domainOriented";
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Serialize an element named name, with the indicated attributes
|
||||||
|
* and value.
|
||||||
|
* @param name is the element name
|
||||||
|
* @param attributes are the attributes...serialize is free to add more.
|
||||||
|
* @param value is the value
|
||||||
|
* @param context is the SerializationContext
|
||||||
|
*/
|
||||||
|
public void serialize(QName name, Attributes attributes,
|
||||||
|
Object value, SerializationContext context)
|
||||||
|
throws IOException
|
||||||
|
{
|
||||||
|
if (!(value instanceof ObjectProperty ))
|
||||||
|
throw new IOException("Can't serialize a " + value.getClass().getName() + " with a EshipRetroObjectPropertySerializer.");
|
||||||
|
ObjectProperty e2e = (ObjectProperty)value;
|
||||||
|
|
||||||
|
//jc55 trouble with RoleLevel objects
|
||||||
|
e2e.setProhibitedFromUpdateBelowRoleLevel(null);
|
||||||
|
e2e.setHiddenFromDisplayBelowRoleLevel(null);
|
||||||
|
|
||||||
|
context.startElement(name, attributes);
|
||||||
|
|
||||||
|
//context.serialize(new QName("", ENTS2ENTSID_MBER), null, e2e.getEnts2entsId());
|
||||||
|
//context.serialize(new QName("", DOMAINID_MBER), null, e2e.getDomainId());
|
||||||
|
//context.serialize(new QName("", DOMAIN_MBER), null, e2e.getDomain());
|
||||||
|
context.serialize(new QName("", "URI" ), null, e2e.getURI());
|
||||||
|
context.serialize(new QName("", "domainPublic"), null, e2e.getDomainPublic());
|
||||||
|
context.serialize(new QName("", "domainSide" ), null, e2e.getDomainSide());
|
||||||
|
|
||||||
|
List stmts = e2e.getObjectPropertyStatements();
|
||||||
|
context.serialize(new QName("", "ents2Ents" ), null, stmts);
|
||||||
|
|
||||||
|
context.endElement();
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMechanismType() { return Constants.AXIS_SAX; }
|
||||||
|
|
||||||
|
public Element writeSchema(Class javaType, Types types) throws Exception {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,337 @@
|
||||||
|
package edu.cornell.mannlib.vitro.webservices.xml.convert.test;
|
||||||
|
|
||||||
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
|
import junit.framework.TestCase;
|
||||||
|
|
||||||
|
import org.dom4j.Element;
|
||||||
|
import org.dom4j.io.HTMLWriter;
|
||||||
|
|
||||||
|
import edu.cornell.mannlib.vitro.beans.Entity;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.dao.VitroFacade;
|
||||||
|
import edu.cornell.mannlib.vitro.webservices.xml.convert.EntityXml;
|
||||||
|
|
||||||
|
public class EntityXmlTest extends TestCase {
|
||||||
|
|
||||||
|
public void testEntityProperties(){
|
||||||
|
String resultXml = null;
|
||||||
|
VitroFacade facade = new VitroFacade();
|
||||||
|
Entity ent = facade.entityById(1);
|
||||||
|
ent = facade.fillExistingEnts2Ents(ent);
|
||||||
|
// assertTrue(ent.getDomainEnts2ents() != null &&
|
||||||
|
// ent.getDomainEnts2ents().size() > 0);
|
||||||
|
// assertTrue(ent.getRangeEnts2ents() != null &&
|
||||||
|
// ent.getRangeEnts2ents().size() > 0);
|
||||||
|
Element elem = EntityXml.toXmlElem(ent,EntityXml.FULL);
|
||||||
|
assertTrue( elem != null );
|
||||||
|
try{
|
||||||
|
resultXml = HTMLWriter.prettyPrintXHTML( elem.asXML() );
|
||||||
|
}catch(Exception ex){
|
||||||
|
fail("exception: " + ex.toString());
|
||||||
|
}
|
||||||
|
assertTrue(resultXml != null && resultXml.length() > 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
junit.textui.TestRunner.run( EntityXmlTest.class );
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
//
|
||||||
|
//<entity>
|
||||||
|
// <id>1</id>
|
||||||
|
// <name>Albert R. Mann Library</name>
|
||||||
|
// <moniker>library</moniker>
|
||||||
|
// <url>
|
||||||
|
// <a href="http://www.mannlib.cornell.edu">Mann Library web page</a>
|
||||||
|
// </url>
|
||||||
|
// <domainProperties>
|
||||||
|
// <Ents2Ents ents2entsId="8949" etypes2RelationsId="562" rangeId="9036" domainId="1">
|
||||||
|
// <domain>
|
||||||
|
// <entity>
|
||||||
|
// <id>1</id>
|
||||||
|
// <name>Albert R. Mann Library</name>
|
||||||
|
// </entity>
|
||||||
|
// </domain>
|
||||||
|
// <range>
|
||||||
|
// <entity>
|
||||||
|
// <id>9036</id>
|
||||||
|
// <name>PRESERVING THE HISTORY OF UNITED STATES AGRICULTURE AND RURAL LIFE: STATE AND LOCAL LITERATURE, 1820-1945, PHASE IV</name>
|
||||||
|
// </entity>
|
||||||
|
// </range>
|
||||||
|
// <property>
|
||||||
|
// <Property id="562" parentId="-1" minCardinality="-1" maxCardinality="-1" domainEtypeId="1" rangeEtypeId="117">
|
||||||
|
// <domainPublic>administers sponsored project</domainPublic>
|
||||||
|
// <rangePublic>administered by</rangePublic>
|
||||||
|
// <domainEtype>
|
||||||
|
// <VClass id="1">
|
||||||
|
// <typename>CUL unit library</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </domainEtype>
|
||||||
|
// <rangeEtype>
|
||||||
|
// <VClass id="117">
|
||||||
|
// <typename>research grant</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </rangeEtype>
|
||||||
|
// </Property>
|
||||||
|
// </property>
|
||||||
|
// </Ents2Ents>
|
||||||
|
// <Ents2Ents ents2entsId="9866" etypes2RelationsId="562" rangeId="9390" domainId="1">
|
||||||
|
// <domain>
|
||||||
|
// <entity>
|
||||||
|
// <id>1</id>
|
||||||
|
// <name>Albert R. Mann Library</name>
|
||||||
|
// </entity>
|
||||||
|
// </domain>
|
||||||
|
// <range>
|
||||||
|
// <entity>
|
||||||
|
// <id>9390</id>
|
||||||
|
// <name>AGORA: ACCESS TO GLOBAL ONLINE RESEARCH IN AGRICULTURE</name>
|
||||||
|
// </entity>
|
||||||
|
// </range>
|
||||||
|
// <property>
|
||||||
|
// <Property id="562" parentId="-1" minCardinality="-1" maxCardinality="-1" domainEtypeId="1" rangeEtypeId="117">
|
||||||
|
// <domainPublic>administers sponsored project</domainPublic>
|
||||||
|
// <rangePublic>administered by</rangePublic>
|
||||||
|
// <domainEtype>
|
||||||
|
// <VClass id="1">
|
||||||
|
// <typename>CUL unit library</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </domainEtype>
|
||||||
|
// <rangeEtype>
|
||||||
|
// <VClass id="117">
|
||||||
|
// <typename>research grant</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </rangeEtype>
|
||||||
|
// </Property>
|
||||||
|
// </property>
|
||||||
|
// </Ents2Ents>
|
||||||
|
// <Ents2Ents ents2entsId="10078" etypes2RelationsId="562" rangeId="9461" domainId="1">
|
||||||
|
// <domain>
|
||||||
|
// <entity>
|
||||||
|
// <id>1</id>
|
||||||
|
// <name>Albert R. Mann Library</name>
|
||||||
|
// </entity>
|
||||||
|
// </domain>
|
||||||
|
// <range>
|
||||||
|
// <entity>
|
||||||
|
// <id>9461</id>
|
||||||
|
// <name>COORDINATED COLLECTION DEVELOPMENT AID</name>
|
||||||
|
// </entity>
|
||||||
|
// </range>
|
||||||
|
// <property>
|
||||||
|
// <Property id="562" parentId="-1" minCardinality="-1" maxCardinality="-1" domainEtypeId="1" rangeEtypeId="117">
|
||||||
|
// <domainPublic>administers sponsored project</domainPublic>
|
||||||
|
// <rangePublic>administered by</rangePublic>
|
||||||
|
// <domainEtype>
|
||||||
|
// <VClass id="1">
|
||||||
|
// <typename>CUL unit library</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </domainEtype>
|
||||||
|
// <rangeEtype>
|
||||||
|
// <VClass id="117">
|
||||||
|
// <typename>research grant</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </rangeEtype>
|
||||||
|
// </Property>
|
||||||
|
// </property>
|
||||||
|
// </Ents2Ents>
|
||||||
|
// <Ents2Ents ents2entsId="10187" etypes2RelationsId="562" rangeId="9500" domainId="1">
|
||||||
|
// <domain>
|
||||||
|
// <entity>
|
||||||
|
// <id>1</id>
|
||||||
|
// <name>Albert R. Mann Library</name>
|
||||||
|
// </entity>
|
||||||
|
// </domain>
|
||||||
|
// <range>
|
||||||
|
// <entity>
|
||||||
|
// <id>9500</id>
|
||||||
|
// <name>PRESERVING THE HISTORY OF UNITED STATES AGRICULTURE AND RURAL LIFE: STATE AND LOCAL LITERATURE, 1820-1945: PHASE V, 2004-2006</name>
|
||||||
|
// </entity>
|
||||||
|
// </range>
|
||||||
|
// <property>
|
||||||
|
// <Property id="562" parentId="-1" minCardinality="-1" maxCardinality="-1" domainEtypeId="1" rangeEtypeId="117">
|
||||||
|
// <domainPublic>administers sponsored project</domainPublic>
|
||||||
|
// <rangePublic>administered by</rangePublic>
|
||||||
|
// <domainEtype>
|
||||||
|
// <VClass id="1">
|
||||||
|
// <typename>CUL unit library</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </domainEtype>
|
||||||
|
// <rangeEtype>
|
||||||
|
// <VClass id="117">
|
||||||
|
// <typename>research grant</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </rangeEtype>
|
||||||
|
// </Property>
|
||||||
|
// </property>
|
||||||
|
// </Ents2Ents>
|
||||||
|
// <Ents2Ents ents2entsId="10369" etypes2RelationsId="562" rangeId="9561" domainId="1">
|
||||||
|
// <domain>
|
||||||
|
// <entity>
|
||||||
|
// <id>1</id>
|
||||||
|
// <name>Albert R. Mann Library</name>
|
||||||
|
// </entity>
|
||||||
|
// </domain>
|
||||||
|
// <range>
|
||||||
|
// <entity>
|
||||||
|
// <id>9561</id>
|
||||||
|
// <name>TEEAL(THE ESSENTIAL ELECTRONIC AGRICULTURAL LIBRARY)</name>
|
||||||
|
// </entity>
|
||||||
|
// </range>
|
||||||
|
// <property>
|
||||||
|
// <Property id="562" parentId="-1" minCardinality="-1" maxCardinality="-1" domainEtypeId="1" rangeEtypeId="117">
|
||||||
|
// <domainPublic>administers sponsored project</domainPublic>
|
||||||
|
// <rangePublic>administered by</rangePublic>
|
||||||
|
// <domainEtype>
|
||||||
|
// <VClass id="1">
|
||||||
|
// <typename>CUL unit library</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </domainEtype>
|
||||||
|
// <rangeEtype>
|
||||||
|
// <VClass id="117">
|
||||||
|
// <typename>research grant</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </rangeEtype>
|
||||||
|
// </Property>
|
||||||
|
// </property>
|
||||||
|
// </Ents2Ents>
|
||||||
|
// <Ents2Ents ents2entsId="11014" etypes2RelationsId="562" rangeId="9774" domainId="1">
|
||||||
|
// <domain>
|
||||||
|
// <entity>
|
||||||
|
// <id>1</id>
|
||||||
|
// <name>Albert R. Mann Library</name>
|
||||||
|
// </entity>
|
||||||
|
// </domain>
|
||||||
|
// <range>
|
||||||
|
// <entity>
|
||||||
|
// <id>9774</id>
|
||||||
|
// <name>PLANNING INFORMATION INFRASTRUCTURE THROUGH A NEW LIBRARY-RESEARCH PARTNERSHIP</name>
|
||||||
|
// </entity>
|
||||||
|
// </range>
|
||||||
|
// <property>
|
||||||
|
// <Property id="562" parentId="-1" minCardinality="-1" maxCardinality="-1" domainEtypeId="1" rangeEtypeId="117">
|
||||||
|
// <domainPublic>administers sponsored project</domainPublic>
|
||||||
|
// <rangePublic>administered by</rangePublic>
|
||||||
|
// <domainEtype>
|
||||||
|
// <VClass id="1">
|
||||||
|
// <typename>CUL unit library</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </domainEtype>
|
||||||
|
// <rangeEtype>
|
||||||
|
// <VClass id="117">
|
||||||
|
// <typename>research grant</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </rangeEtype>
|
||||||
|
// </Property>
|
||||||
|
// </property>
|
||||||
|
// </Ents2Ents>
|
||||||
|
// <Ents2Ents ents2entsId="11174" etypes2RelationsId="562" rangeId="9833" domainId="1">
|
||||||
|
// <domain>
|
||||||
|
// <entity>
|
||||||
|
// <id>1</id>
|
||||||
|
// <name>Albert R. Mann Library</name>
|
||||||
|
// </entity>
|
||||||
|
// </domain>
|
||||||
|
// <range>
|
||||||
|
// <entity>
|
||||||
|
// <id>9833</id>
|
||||||
|
// <name>DISSEMINATION AND PRESERVAITON OF DIGITAL AGRICULTURAL ECONOMIC DATA ON THE INTERNET</name>
|
||||||
|
// </entity>
|
||||||
|
// </range>
|
||||||
|
// <property>
|
||||||
|
// <Property id="562" parentId="-1" minCardinality="-1" maxCardinality="-1" domainEtypeId="1" rangeEtypeId="117">
|
||||||
|
// <domainPublic>administers sponsored project</domainPublic>
|
||||||
|
// <rangePublic>administered by</rangePublic>
|
||||||
|
// <domainEtype>
|
||||||
|
// <VClass id="1">
|
||||||
|
// <typename>CUL unit library</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </domainEtype>
|
||||||
|
// <rangeEtype>
|
||||||
|
// <VClass id="117">
|
||||||
|
// <typename>research grant</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </rangeEtype>
|
||||||
|
// </Property>
|
||||||
|
// </property>
|
||||||
|
// </Ents2Ents>
|
||||||
|
// <Ents2Ents ents2entsId="11212" etypes2RelationsId="562" rangeId="9848" domainId="1">
|
||||||
|
// <domain>
|
||||||
|
// <entity>
|
||||||
|
// <id>1</id>
|
||||||
|
// <name>Albert R. Mann Library</name>
|
||||||
|
// </entity>
|
||||||
|
// </domain>
|
||||||
|
// <range>
|
||||||
|
// <entity>
|
||||||
|
// <id>9848</id>
|
||||||
|
// <name>BUILDING A SERVICE ORIENTED ARCHITECTURE FOR AGNIC</name>
|
||||||
|
// </entity>
|
||||||
|
// </range>
|
||||||
|
// <property>
|
||||||
|
// <Property id="562" parentId="-1" minCardinality="-1" maxCardinality="-1" domainEtypeId="1" rangeEtypeId="117">
|
||||||
|
// <domainPublic>administers sponsored project</domainPublic>
|
||||||
|
// <rangePublic>administered by</rangePublic>
|
||||||
|
// <domainEtype>
|
||||||
|
// <VClass id="1">
|
||||||
|
// <typename>CUL unit library</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </domainEtype>
|
||||||
|
// <rangeEtype>
|
||||||
|
// <VClass id="117">
|
||||||
|
// <typename>research grant</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </rangeEtype>
|
||||||
|
// </Property>
|
||||||
|
// </property>
|
||||||
|
// </Ents2Ents>
|
||||||
|
// <Ents2Ents ents2entsId="11245" etypes2RelationsId="562" rangeId="9859" domainId="1">
|
||||||
|
// <domain>
|
||||||
|
// <entity>
|
||||||
|
// <id>1</id>
|
||||||
|
// <name>Albert R. Mann Library</name>
|
||||||
|
// </entity>
|
||||||
|
// </domain>
|
||||||
|
// <range>
|
||||||
|
// <entity>
|
||||||
|
// <id>9859</id>
|
||||||
|
// <name>THE ESSENTIAL ELECTRONIC AGRICULTURAL LIBRARY</name>
|
||||||
|
// </entity>
|
||||||
|
// </range>
|
||||||
|
// <property>
|
||||||
|
// <Property id="562" parentId="-1" minCardinality="-1" maxCardinality="-1" domainEtypeId="1" rangeEtypeId="117">
|
||||||
|
// <domainPublic>administers sponsored project</domainPublic>
|
||||||
|
// <rangePublic>administered by</rangePublic>
|
||||||
|
// <domainEtype>
|
||||||
|
// <VClass id="1">
|
||||||
|
// <typename>CUL unit library</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </domainEtype>
|
||||||
|
// <rangeEtype>
|
||||||
|
// <VClass id="117">
|
||||||
|
// <typename>research grant</typename>
|
||||||
|
// </VClass>
|
||||||
|
// </rangeEtype>
|
||||||
|
// </Property>
|
||||||
|
// </property>
|
||||||
|
// </Ents2Ents>
|
||||||
|
// <Ents2Ents ents2entsId="15023" etypes2RelationsId="562" rangeId="11579" domainId="1">
|
||||||
|
// <domain>
|
||||||
|
// <entity>
|
||||||
|
// <id>1</id>
|
||||||
|
// <name>Albert R. Mann Library</name>
|
||||||
|
// </entity>
|
||||||
|
// </domain>
|
||||||
|
// <range>
|
||||||
|
// <entity>
|
||||||
|
// <id>11579</id>
|
||||||
|
// <name>COORDINATED COLLECTION DEVELOPMENT AID</name>
|
||||||
|
// </entity>
|
||||||
|
// </range>
|
||||||
|
// <property>
|
||||||
|
// <Property id="562" parentId="-1" minCardinality="-1" maxCardinality="-1" domainEtypeId="1" rangeEtypeId="117">
|
||||||
|
// <domainPublic>administers sponsored project</domainPublic>
|
||||||
|
// <rangePublic>administered by</rangePublic>
|
||||||
|
// <domainEtype>
|
||||||
|
// <VClass ...
|
|
@ -0,0 +1,47 @@
|
||||||
|
package edu.cornell.mannlib.vitro.webservices.xml.convert.test;
|
||||||
|
|
||||||
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
|
import org.dom4j.Element;
|
||||||
|
|
||||||
|
import edu.cornell.mannlib.vitro.beans.Ents2Ents;
|
||||||
|
import edu.cornell.mannlib.vitro.webservices.xml.convert.Ents2EntsXml;
|
||||||
|
import junit.framework.TestCase;
|
||||||
|
|
||||||
|
public class Ents2EntsTest extends TestCase {
|
||||||
|
|
||||||
|
public void testNull(){
|
||||||
|
Ents2EntsXml xmler = new Ents2EntsXml();
|
||||||
|
assertEquals(xmler.toXmlElem(null), null);
|
||||||
|
}
|
||||||
|
|
||||||
|
public Ents2Ents makeObj(){
|
||||||
|
Ents2Ents obj = new Ents2Ents();
|
||||||
|
obj.setEnts2entsId(12);
|
||||||
|
obj.setDomainId(223);
|
||||||
|
obj.setRangeId(2255);
|
||||||
|
obj.setPropertyId(605);
|
||||||
|
obj.setQualifier("This is the super(){}[]';\":.,><");
|
||||||
|
return obj;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testAttributes(){
|
||||||
|
Ents2Ents ent = makeObj();
|
||||||
|
Ents2EntsXml xmler = new Ents2EntsXml();
|
||||||
|
Element elem = xmler.toXmlElem(ent);
|
||||||
|
assertEquals(elem.valueOf("@ents2entsId"),
|
||||||
|
Integer.toString(ent.getEnts2entsId()));
|
||||||
|
assertEquals(elem.valueOf("@domainId"),
|
||||||
|
Integer.toString(ent.getDomainId()));
|
||||||
|
assertEquals(elem.valueOf("@rangeId"),
|
||||||
|
Integer.toString(ent.getRangeId()));
|
||||||
|
assertEquals(elem.valueOf("@etypes2RelationsId"),
|
||||||
|
Integer.toString(ent.getPropertyId()));
|
||||||
|
assertEquals(elem.valueOf("@qualifier"),ent.getQualifier());
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
junit.textui.TestRunner.run( Ents2EntsTest.class );
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,26 @@
|
||||||
|
package edu.cornell.mannlib.vitro.webservices.xml.convert.test;
|
||||||
|
|
||||||
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
|
import edu.cornell.mannlib.vitro.beans.VClass;
|
||||||
|
import edu.cornell.mannlib.vitro.webservices.xml.convert.*;
|
||||||
|
import edu.cornell.mannlib.vitro.dao.db.test.EntityDaoTest;
|
||||||
|
import junit.framework.TestCase;
|
||||||
|
|
||||||
|
public class EtypeXmlTest extends TestCase {
|
||||||
|
public void testXml1(){
|
||||||
|
String result = "<VClass id=\"2132\" quickEditJsp=\"bleck/editjsp.bla\">"+
|
||||||
|
"<typename>testtype</typename></VClass>";
|
||||||
|
VClass etype = new VClass();
|
||||||
|
etype.setId(2132);
|
||||||
|
// etype.setTypename("testtype");
|
||||||
|
etype.setQuickEditJsp("bleck/editjsp.bla");
|
||||||
|
EtypeXml xmler = new EtypeXml();
|
||||||
|
assertEquals(result, xmler.toXmlStr(etype));
|
||||||
|
|
||||||
|
}
|
||||||
|
public static void main(String[] args) {
|
||||||
|
junit.textui.TestRunner.run( EtypeXmlTest.class );
|
||||||
|
}
|
||||||
|
//this is a test change
|
||||||
|
}
|
|
@ -0,0 +1,48 @@
|
||||||
|
package edu.cornell.mannlib.vitro.webservices.xml.convert.test;
|
||||||
|
|
||||||
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
|
import junit.framework.TestCase;
|
||||||
|
import edu.cornell.mannlib.vitro.webservices.xml.convert.*;
|
||||||
|
import edu.cornell.mannlib.vitro.beans.*;
|
||||||
|
|
||||||
|
public class PropertyXmlTest extends TestCase {
|
||||||
|
public void testXml1(){
|
||||||
|
String expected =
|
||||||
|
"<Property id=\"12\" parentId=\"1\" minCardinality=\"0\" "+
|
||||||
|
"maxCardinality=\"23\" domainEtypeId=\"2323\" "+
|
||||||
|
"rangeEtypeId=\"2443\"/>";
|
||||||
|
|
||||||
|
Property prop = new Property();
|
||||||
|
prop.setId(12);
|
||||||
|
prop.setParentId(1);
|
||||||
|
prop.setMinCardinality(0);
|
||||||
|
prop.setMaxCardinality(23);
|
||||||
|
// prop.setDomainEtypeId(2323);
|
||||||
|
// prop.setRangeEtypeId(2443);
|
||||||
|
PropertyXml xmler = new PropertyXml();
|
||||||
|
assertEquals(expected,xmler.toXmlStr(prop));
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testXml2(){
|
||||||
|
String expected =
|
||||||
|
"<Property id=\"12\" parentId=\"1\" minCardinality=\"0\" "+
|
||||||
|
"maxCardinality=\"23\" domainEtypeId=\"2323\" "+
|
||||||
|
"rangeEtypeId=\"2443\"/>";
|
||||||
|
|
||||||
|
Property prop = new Property();
|
||||||
|
prop.setId(12);
|
||||||
|
prop.setParentId(1);
|
||||||
|
prop.setMinCardinality(0);
|
||||||
|
prop.setMaxCardinality(23);
|
||||||
|
// prop.setDomainEtypeId(2323);
|
||||||
|
// prop.setRangeEtypeId(2443);
|
||||||
|
PropertyXml xmler = new PropertyXml();
|
||||||
|
assertEquals(expected,xmler.toXmlStr(prop));
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
junit.textui.TestRunner.run( PropertyXmlTest.class );
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,43 @@
|
||||||
|
package edu.cornell.mannlib.vitro.webservices.xml.convert.test;
|
||||||
|
|
||||||
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
|
import org.dom4j.Element;
|
||||||
|
import org.dom4j.io.HTMLWriter;
|
||||||
|
|
||||||
|
import junit.framework.TestCase;
|
||||||
|
import edu.cornell.mannlib.vitro.beans.*;
|
||||||
|
import edu.cornell.mannlib.vitro.dao.db.*;
|
||||||
|
import edu.cornell.mannlib.vitro.webservices.xml.convert.TabXml;
|
||||||
|
|
||||||
|
public class TabXmlTest extends TestCase {
|
||||||
|
|
||||||
|
private void doTabXmlTest(int tabId){
|
||||||
|
// Tab tab = TabDao.getTab(tabId, 1,"now()",10,60,0,null,null,null);
|
||||||
|
// Element elem = TabXml.toXmlElem(tab, 10);
|
||||||
|
// assertTrue( elem != null );
|
||||||
|
// String resultXml = null;
|
||||||
|
// try{
|
||||||
|
// resultXml = HTMLWriter.prettyPrintXHTML( elem.asXML() );
|
||||||
|
// }catch(Exception ex){
|
||||||
|
// fail("exception: " + ex.toString());
|
||||||
|
// }
|
||||||
|
// assertTrue(resultXml != null && resultXml.length() > 0);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testTabs(){
|
||||||
|
doTabXmlTest(63);
|
||||||
|
doTabXmlTest(18);
|
||||||
|
doTabXmlTest(19);
|
||||||
|
//bad xhtml doTabXmlTest(23);
|
||||||
|
doTabXmlTest(25);
|
||||||
|
doTabXmlTest(35);
|
||||||
|
doTabXmlTest(64);
|
||||||
|
doTabXmlTest(42);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args){
|
||||||
|
junit.textui.TestRunner.run( TabXmlTest.class );
|
||||||
|
}
|
||||||
|
}
|
24
services/wsdd/TabWs.wsdd
Normal file
24
services/wsdd/TabWs.wsdd
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
|
||||||
|
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
|
||||||
|
<service name="VitroWs" provider="java:RPC">
|
||||||
|
<parameter name="className" value="edu.cornell.mannlib.vitro.webservices.VitroWs"/>
|
||||||
|
<parameter name="allowedMethods" value="getFullTab,getTabsForPortal,getFullEntityById"/>
|
||||||
|
|
||||||
|
<beanMapping qname="myNS:Entity" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.beans.Entity"/>
|
||||||
|
<beanMapping qname="myNS:VClass" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.beans.VClass"/>
|
||||||
|
<beanMapping qname="myNS:Tab" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.beans.Tab"/>
|
||||||
|
<beanMapping qname="myNS:Ents2Ents" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.beans.Ents2Ents"/>
|
||||||
|
<beanMapping qname="myNS:Property" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.beans.Property"/>
|
||||||
|
<beanMapping qname="myNS:Link" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.beans.Link"/>
|
||||||
|
<beanMapping qname="myNS:PropertyInstance" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.beans.PropertyInstance"/>
|
||||||
|
</service>
|
||||||
|
|
||||||
|
|
||||||
|
</deployment>
|
16
services/wsdd/VitroFacade.wsdd
Normal file
16
services/wsdd/VitroFacade.wsdd
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
|
||||||
|
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
|
||||||
|
<service name="VitroFacade" provider="java:RPC">
|
||||||
|
<parameter name="className" value="edu.cornell.mannlib.vitro.db.dao.VitroFacade"/>
|
||||||
|
<parameter name="allowedMethods" value="entityById,getTab,getTabHierarcy,getTabsForPortal,getEntsForTab,getAlphaEntsForTab"/>
|
||||||
|
|
||||||
|
<beanMapping qname="myNS:Entity" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.beans.Entity"/>
|
||||||
|
<beanMapping qname="myNS:VClass" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.beans.VClass"/>
|
||||||
|
<beanMapping qname="myNS:Tab" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.beans.Tab"/>
|
||||||
|
</service>
|
||||||
|
|
||||||
|
|
||||||
|
</deployment>
|
24
services/wsdd/VitroWs.wsdd
Normal file
24
services/wsdd/VitroWs.wsdd
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
|
||||||
|
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
|
||||||
|
<service name="VitroWs" provider="java:RPC">
|
||||||
|
<parameter name="className" value="edu.cornell.mannlib.vitro.webservices.VitroWs"/>
|
||||||
|
<parameter name="allowedMethods" value="getFullTab,getTabsForPortal,getFullEntityById"/>
|
||||||
|
|
||||||
|
<beanMapping qname="myNS:Entity" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.beans.Entity"/>
|
||||||
|
<beanMapping qname="myNS:VClass" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.beans.VClass"/>
|
||||||
|
<beanMapping qname="myNS:Tab" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.beans.Tab"/>
|
||||||
|
<beanMapping qname="myNS:Ents2Ents" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.beans.Ents2Ents"/>
|
||||||
|
<beanMapping qname="myNS:Property" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.beans.Property"/>
|
||||||
|
<beanMapping qname="myNS:Link" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.beans.Link"/>
|
||||||
|
<beanMapping qname="myNS:PropertyInstance" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.beans.PropertyInstance"/>
|
||||||
|
</service>
|
||||||
|
|
||||||
|
|
||||||
|
</deployment>
|
44
services/wsdd/VitroWs2.wsdd
Normal file
44
services/wsdd/VitroWs2.wsdd
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
<deployment
|
||||||
|
xmlns="http://xml.apache.org/axis/wsdd/"
|
||||||
|
xmlns:myNS="http://vivo.cornell.edu/vitro/webservices/axis1/1.0"
|
||||||
|
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
|
||||||
|
<service name="VitroWs2" provider="java:RPC">
|
||||||
|
<parameter name="scope" value="application"/>
|
||||||
|
<parameter name="sendMultiRefs" value="false"/>
|
||||||
|
<parameter name="className" value="edu.cornell.mannlib.vitro.webservices.VitroWs"/>
|
||||||
|
<parameter name="allowedMethods" value="getFullTab,getTabsForPortal,getFullEntityById"/>
|
||||||
|
|
||||||
|
<!-- <beanMapping qname="myNS:Entity" xmlns:myNS="urn:edu.cornell.mannlib.vitro" -->
|
||||||
|
<!-- languageSpecificType="java:edu.cornell.mannlib.vitro.beans.Entity"/> -->
|
||||||
|
|
||||||
|
|
||||||
|
<typeMapping qname="myNS:Entity" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.Individual"
|
||||||
|
serializer="edu.cornell.mannlib.vitro.webservices.serializers.EntitySerFactory"
|
||||||
|
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||||
|
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
||||||
|
|
||||||
|
<typeMapping qname="myNS:Ents2Ents" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.ObjectPropertyStatement"
|
||||||
|
serializer="edu.cornell.mannlib.vitro.webservices.serializers.Ents2EntsSerFactory"
|
||||||
|
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||||
|
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
||||||
|
|
||||||
|
<beanMapping qname="myNS:VClass" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.VClass"/>
|
||||||
|
|
||||||
|
<beanMapping qname="myNS:Property" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.ObjectProperty"/>
|
||||||
|
|
||||||
|
<beanMapping qname="myNS:PropertyInstance" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.PropertyInstance"/>
|
||||||
|
|
||||||
|
<beanMapping qname="myNS:Tab" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.Tab"/>
|
||||||
|
|
||||||
|
<beanMapping qname="myNS:Link" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.Link"/>
|
||||||
|
</service>
|
||||||
|
|
||||||
|
|
||||||
|
</deployment>
|
52
services/wsdd/VitroWs3.wsdd
Normal file
52
services/wsdd/VitroWs3.wsdd
Normal file
|
@ -0,0 +1,52 @@
|
||||||
|
<deployment
|
||||||
|
xmlns="http://xml.apache.org/axis/wsdd/"
|
||||||
|
xmlns:myNS="http://vivo.cornell.edu/vitro/webservices/axis1/1.0"
|
||||||
|
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
|
||||||
|
<service name="VitroWs3" provider="java:RPC">
|
||||||
|
<parameter name="scope" value="application"/>
|
||||||
|
<parameter name="sendMultiRefs" value="false"/>
|
||||||
|
<parameter name="className" value="edu.cornell.mannlib.vitro.webservices.VitroWs"/>
|
||||||
|
<parameter name="allowedMethods" value="getFullTab,getTabsForPortal,getFullEntityById"/>
|
||||||
|
|
||||||
|
<!-- <beanMapping qname="myNS:Entity" xmlns:myNS="urn:edu.cornell.mannlib.vitro" -->
|
||||||
|
<!-- languageSpecificType="java:edu.cornell.mannlib.vitro.beans.Entity"/> -->
|
||||||
|
|
||||||
|
|
||||||
|
<typeMapping qname="myNS:Entity" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.Individual"
|
||||||
|
serializer="edu.cornell.mannlib.vitro.webservices.serializers.EntitySerFactory"
|
||||||
|
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||||
|
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
||||||
|
|
||||||
|
<typeMapping qname="myNS:Ents2Ents" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.ObjectPropertyStatement"
|
||||||
|
serializer="edu.cornell.mannlib.vitro.webservices.serializers.Ents2EntsSerFactory"
|
||||||
|
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||||
|
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
||||||
|
|
||||||
|
<beanMapping qname="myNS:VClass" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.VClass"/>
|
||||||
|
|
||||||
|
<typeMapping qname="myNS:Property" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.ObjectProperty"
|
||||||
|
serializer="edu.cornell.mannlib.vitro.webservices.serializers.EshipRetroObjectPropertySerFactory"
|
||||||
|
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||||
|
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
<beanMapping qname="myNS:Property" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.ObjectProperty"/>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<beanMapping qname="myNS:PropertyInstance" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.PropertyInstance"/>
|
||||||
|
|
||||||
|
<beanMapping qname="myNS:Tab" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.Tab"/>
|
||||||
|
|
||||||
|
<beanMapping qname="myNS:Link" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.Link"/>
|
||||||
|
</service>
|
||||||
|
|
||||||
|
|
||||||
|
</deployment>
|
|
@ -0,0 +1,9 @@
|
||||||
|
<beans xmlns="http://xfire.codehaus.org/config/1.0">
|
||||||
|
<service>
|
||||||
|
<name>VitroWs</name>
|
||||||
|
<namespace>http://vitro.mannlib.cornell.edu/VitroWs2</namespace>
|
||||||
|
<serviceClass>edu.cornell.mannlib.vitro.webservices.VitroWs2</serviceClass>
|
||||||
|
<implementationClass>edu.cornell.mannlib.vitro.webservices.VitroWs2</implementationClass>
|
||||||
|
</service>
|
||||||
|
</beans>
|
||||||
|
|
47
services/xsl/entity2eng.xsl
Normal file
47
services/xsl/entity2eng.xsl
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
<!-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
|
||||||
|
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||||
|
|
||||||
|
<!-- bdc34: -->
|
||||||
|
<!-- For converting an Entity to be displayed using the cals css -->
|
||||||
|
|
||||||
|
<xsl:template match="/">
|
||||||
|
<xsl:apply-templates />
|
||||||
|
</xsl:template>
|
||||||
|
|
||||||
|
<xsl:template match="/entity">
|
||||||
|
<div class="entity">
|
||||||
|
<p>
|
||||||
|
<h4><xsl:value-of select="name"/> | <xsl:value-of select="moniker"/>
|
||||||
|
<xsl:if test="url"> | <i><xsl:copy-of select="url"/></i> </xsl:if></h4>
|
||||||
|
<xsl:if test="campus_address"><br/>address: <xsl:value-of select="campus_address"/></xsl:if>
|
||||||
|
<xsl:if test="campus_phone"><br/>phone: <xsl:value-of select="campus_phone"/></xsl:if>
|
||||||
|
<xsl:if test="email_address"><br/>email: <xsl:value-of select="email_address"/></xsl:if>
|
||||||
|
</p>
|
||||||
|
<xsl:if test="imageThumb">
|
||||||
|
<p class="thumbnail"><img src="images/people/{imageThumb}" width="150"/></p>
|
||||||
|
</xsl:if>
|
||||||
|
<xsl:apply-templates select="PropertyInstances"/>
|
||||||
|
<div class="entityBody">
|
||||||
|
<h5><xsl:value-of select="blurb"/></h5>
|
||||||
|
<xsl:copy-of select="description"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</xsl:template>
|
||||||
|
|
||||||
|
<xsl:template match="PropertyInstances">
|
||||||
|
<!--p class="entityRelations"><xsl:value-of select="entity"/>:</p-->
|
||||||
|
<ul class="entityListElements">
|
||||||
|
<xsl:apply-templates select="entity"/>
|
||||||
|
</ul>
|
||||||
|
</xsl:template>
|
||||||
|
|
||||||
|
<xsl:template match="entity" >
|
||||||
|
<li>
|
||||||
|
<!--a class="entityLink" href="entityxml?id={@id}&dir=eng"><xsl:value-of select="name"/></a-->
|
||||||
|
<xsl:if test="name"><xsl:copy-of select="name"/></xsl:if>
|
||||||
|
<xsl:if test="moniker"> | <xsl:value-of select="moniker"/></xsl:if>
|
||||||
|
<xsl:if test="url"> | <i><xsl:copy-of select="url"/></i></xsl:if>
|
||||||
|
</li>
|
||||||
|
</xsl:template>
|
||||||
|
</xsl:stylesheet>
|
323
webapp/build.xml
Normal file
323
webapp/build.xml
Normal file
|
@ -0,0 +1,323 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
|
||||||
|
<!-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
|
||||||
|
|
||||||
|
<!-- <!DOCTYPE project PUBLIC "-//ANT//DTD project//EN" "ant16.dtd" > this doesn't seem to work well. -->
|
||||||
|
|
||||||
|
<project name="vivoWebApp" default="test" basedir="../">
|
||||||
|
|
||||||
|
<!-- Load user property definition overrides -->
|
||||||
|
<property file="./config/globalbuild.properties"/>
|
||||||
|
|
||||||
|
<!-- defined in globalbuild.properties -->
|
||||||
|
<!-- <property name="webapp.dir" value="./webapp"/> -->
|
||||||
|
<!-- <property name="webapp.build" value="${webapp.dir}/.build"/> -->
|
||||||
|
|
||||||
|
<!-- Property Definitions -->
|
||||||
|
<property name="app.name" value="vitro-webapp"/>
|
||||||
|
<property name="app.version" value="3.0"/>
|
||||||
|
|
||||||
|
<!-- default lucene index dir:: -->
|
||||||
|
<property name="luceneIndexDir" value="/usr/local/lucene/vitroAntdefault"/>
|
||||||
|
|
||||||
|
<!-- defined in globalbuild.properties -->
|
||||||
|
<property name="source.dir" value="${source.home}"/>
|
||||||
|
|
||||||
|
<!-- The clones/build.xml file modifies this default upload directory, now used for images -->
|
||||||
|
<property name="uploadDir" value="${source.dir}/webapp/web" />
|
||||||
|
|
||||||
|
<property name="compile.debug" value="true"/>
|
||||||
|
<property name="compile.deprecation" value="true" />
|
||||||
|
<property name="compile.optimize" value="true" />
|
||||||
|
|
||||||
|
<property name="dist.home" value="${webapp.dir}/dist"/>
|
||||||
|
|
||||||
|
<!-- directory for local modifications -->
|
||||||
|
<property name="modDir" value="modifications"/>
|
||||||
|
|
||||||
|
<property name="axis.port" value="8080"/>
|
||||||
|
<property name="axis.server" value="localhost"/>
|
||||||
|
|
||||||
|
<!-- ==================== Compilation Classpath =========================== -->
|
||||||
|
|
||||||
|
<path id="webapp-compile.classpath">
|
||||||
|
<!-- Include all JAR files that will be included in /WEB-INF/lib -->
|
||||||
|
<fileset dir="webapp/lib">
|
||||||
|
<include name="**/*.jar"/>
|
||||||
|
</fileset>
|
||||||
|
</path>
|
||||||
|
|
||||||
|
<!-- ==================== Runtime Classpath =========================== -->
|
||||||
|
<path id="webapp-run.classpath">
|
||||||
|
<!-- some other jars we need -->
|
||||||
|
<!-- build dir -->
|
||||||
|
<pathelement path="${webapp.build}"/>
|
||||||
|
</path>
|
||||||
|
|
||||||
|
<!-- =================== Axis Classpath ============================== -->
|
||||||
|
<!-- need to include the classes directory so that axis can
|
||||||
|
find the necessary compiled classes -->
|
||||||
|
<path id="axis.classpath">
|
||||||
|
<pathelement path="${webapp.build}/WEB-INF/classes"/>
|
||||||
|
<fileset dir="webapp/lib">
|
||||||
|
<include name="**/*.jar" />
|
||||||
|
</fileset>
|
||||||
|
</path>
|
||||||
|
<!-- ================== set up the ant axis tasks ================ -->
|
||||||
|
<taskdef resource="axis-tasks.properties" classpathref="axis.classpath" />
|
||||||
|
|
||||||
|
<!-- ==================== All Target ====================================== -->
|
||||||
|
<!-- The "all" target is a shortcut for running the "clean" target followed
|
||||||
|
by the "compile" target, to force a complete recompile. -->
|
||||||
|
<target name="all" depends="clean,compile" description="Clean build and dist, then compile"/>
|
||||||
|
<!-- ==================== Clean Target ==================================== -->
|
||||||
|
<!-- The "clean" target deletes any previous "build" and "dist" directory,
|
||||||
|
so that you can be ensured the application can be built from scratch.
|
||||||
|
do not delete the ${deploy.home}/images directory !!! that's where images
|
||||||
|
are uploaded to-->
|
||||||
|
<target name="clean" description="Delete old build and dist directories">
|
||||||
|
<delete failonerror="false" dir="${webapp.build}"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ==================== Compile Target ================================== -->
|
||||||
|
<!--
|
||||||
|
The "compile" target transforms source files (from your "src" directory)
|
||||||
|
into object files in the appropriate location in the build directory.
|
||||||
|
This example assumes that you will be including your classes in an
|
||||||
|
unpacked directory hierarchy under "/WEB-INF/classes".
|
||||||
|
-->
|
||||||
|
<target name="compile" depends="prepare" description="Compile Java sources">
|
||||||
|
<!-- deletes all files that depend on changes .java files -->
|
||||||
|
<depend srcdir="${webapp.dir}/src"
|
||||||
|
destdir="${webapp.build}/WEB-INF/classes"
|
||||||
|
closure="false"
|
||||||
|
cache=".depcache">
|
||||||
|
<classpath refid="webapp-compile.classpath"/>
|
||||||
|
</depend>
|
||||||
|
|
||||||
|
<echo>Compile webapp</echo>
|
||||||
|
<javac srcdir="${webapp.dir}/src"
|
||||||
|
destdir="${webapp.build}/WEB-INF/classes"
|
||||||
|
debug="${compile.debug}"
|
||||||
|
deprecation="${compile.deprecation}"
|
||||||
|
optimize="${compile.optimize}"
|
||||||
|
source="1.5">
|
||||||
|
<classpath refid="webapp-compile.classpath"/>
|
||||||
|
<!-- <compilerarg value="-Xlint:unchecked"/> -->
|
||||||
|
</javac>
|
||||||
|
|
||||||
|
<echo>Compile unit tests</echo>
|
||||||
|
<javac srcdir="${webapp.dir}/test"
|
||||||
|
destdir="${webapp.build}/WEB-INF/classes"
|
||||||
|
debug="yes"
|
||||||
|
source="1.5">
|
||||||
|
<classpath refid="webapp-compile.classpath"/>
|
||||||
|
</javac>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ==================== Test Target ================================== -->
|
||||||
|
<!--
|
||||||
|
The "test" target runs JUnit tests against the compiled classes.
|
||||||
|
-->
|
||||||
|
<target name="test" depends="prepare,compile" description="Run JUnit tests" unless="skiptests">
|
||||||
|
<java classname="edu.cornell.mannlib.vitro.testing.VitroTestRunner" fork="yes" failonerror="true">
|
||||||
|
<classpath>
|
||||||
|
<!-- The classes and their supporting JARs -->
|
||||||
|
<pathelement location="${webapp.build}/WEB-INF/classes" />
|
||||||
|
<path refid="webapp-compile.classpath" />
|
||||||
|
|
||||||
|
<!-- Test data files are stored with the test source -->
|
||||||
|
<pathelement location="${webapp.dir}/test" />
|
||||||
|
</classpath>
|
||||||
|
<arg file="${webapp.dir}/test" />
|
||||||
|
<arg value="${testlevel}" />
|
||||||
|
</java>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ============================== Copy Etc ============================== -->
|
||||||
|
<!-- There are configuration files under dream/etc that need to go in different -->
|
||||||
|
<!-- places in the build. This target copies them to the correct places. -->
|
||||||
|
<target name="copyEtc"
|
||||||
|
description="copies the files from the dream/etc dir to correct places in build">
|
||||||
|
<echo> ${tomcat.home}</echo>
|
||||||
|
<copy todir="${webapp.build}/WEB-INF">
|
||||||
|
<fileset file="${webapp.dir}/config/web.xml"/>
|
||||||
|
<fileset file="${webapp.dir}/config/dwr.xml"/>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<!-- copy the default log4j config and then copy the override if it exists -->
|
||||||
|
<copy file="${webapp.dir}/config/default.log4j.properties"
|
||||||
|
tofile="${webapp.build}/WEB-INF/classes/log4j.properties"
|
||||||
|
filtering="true">
|
||||||
|
<filterchain><expandproperties/></filterchain>
|
||||||
|
</copy>
|
||||||
|
<copy file="${webapp.dir}/config/debugging.log4j.properties"
|
||||||
|
tofile="${webapp.build}/WEB-INF/classes/log4j.properties"
|
||||||
|
filtering="true"
|
||||||
|
failonerror="false">
|
||||||
|
<filterchain><expandproperties/></filterchain>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- copy properties files -->
|
||||||
|
<copy todir="${webapp.build}/WEB-INF/classes">
|
||||||
|
<fileset dir="${webapp.dir}/config" includes="connection.properties" />
|
||||||
|
<fileset file="${webapp.dir}/config/upload.properties" />
|
||||||
|
<fileset file="${webapp.dir}/config/LuceneSetup.properties" />
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<copy todir="${webapp.build}/WEB-INF/tlds">
|
||||||
|
<fileset dir="${webapp.dir}/config/tlds" includes="**/*" excludes="*.LCK"/></copy>
|
||||||
|
|
||||||
|
<!-- copy the webservices files -->
|
||||||
|
<copy todir="${webapp.build}/WEB-INF/lib">
|
||||||
|
<fileset dir="${ws.lib}"
|
||||||
|
includes="**/*"
|
||||||
|
excludes="*.LCK"/>
|
||||||
|
</copy>
|
||||||
|
<copy todir="${webapp.build}">
|
||||||
|
<fileset dir="${ws.dir}/additions"
|
||||||
|
includes="**/*"
|
||||||
|
excludes=".svn"/>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<!-- copy the ontology files -->
|
||||||
|
<copy todir="${webapp.build}/WEB-INF/ontologies">
|
||||||
|
<fileset dir="${webapp.dir}/ontologies"/>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<!-- copy the model files -->
|
||||||
|
<copy todir="${webapp.build}/WEB-INF/submodels" failonerror="false">
|
||||||
|
<fileset dir="${webapp.dir}/model/submodels"/>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<!-- copy the init-data files -->
|
||||||
|
<copy todir="${webapp.build}/WEB-INF/init-data" failonerror="false">
|
||||||
|
<fileset dir="${webapp.dir}/model/init-data"/>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<!-- xml files from src tree -->
|
||||||
|
<copy todir="${webapp.build}/WEB-INF/classes">
|
||||||
|
<fileset dir="${webapp.dir}/src" includes="**/*.xml" excludes="*.svn"/>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<copy todir="${webapp.build}/WEB-INF/lib">
|
||||||
|
<fileset dir="${webapp.lib}">
|
||||||
|
<!-- these are already in Tomcat: we shouldn't conflict. -->
|
||||||
|
<exclude name="jsp-api.jar"/>
|
||||||
|
<exclude name="servlet-api.jar"/>
|
||||||
|
</fileset>
|
||||||
|
</copy>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ==================== Local Modifications ============================ -->
|
||||||
|
<!-- The localMods target will copy local modifications into the build directory
|
||||||
|
so that a user can who is not using the clone system can have a way to
|
||||||
|
apply simple chages to the deployed web application. In many cases
|
||||||
|
there will be no modifications directory so this will do nothing. -->
|
||||||
|
<target name="localMods" depends="compile,test,copyEtc"
|
||||||
|
description="Adds local modifications to build">
|
||||||
|
<copy todir="${webapp.build}" overwrite="true" preservelastmodified="true" failonerror="false">
|
||||||
|
<fileset dir="${modDir}" />
|
||||||
|
</copy>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ==================== Deploy Target =================================== -->
|
||||||
|
<!--
|
||||||
|
The "deploy" target copies the contents of the build directory into a
|
||||||
|
location required by our servlet container, and picks up any external
|
||||||
|
dependencies along the way. After restarting the servlet container, you
|
||||||
|
can now test your web application. -->
|
||||||
|
<target name="deploy" depends="compile,test,copyEtc, localMods"
|
||||||
|
description="Deploy application to servlet container">
|
||||||
|
<!-- Copy the contents of the build directory -->
|
||||||
|
<mkdir dir="${webapp.deploy.home}"/>
|
||||||
|
<copy todir="${webapp.deploy.home}">
|
||||||
|
<fileset dir="${webapp.build}"/>
|
||||||
|
</copy>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ==================== Jar Target ==================== -->
|
||||||
|
<target name="jar" depends="compile,test" description="Makes a jar file">
|
||||||
|
<jar jarfile="${webapp.dir.jar}" basedir="${webapp.build}/WEB-INF/classes"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ==================== Javadoc Target ================================== -->
|
||||||
|
<!--
|
||||||
|
The "javadoc" target creates Javadoc API documentation for the Java
|
||||||
|
classes included in your application. Normally, this is only required
|
||||||
|
when preparing a distribution release, but is available as a separate
|
||||||
|
target in case the developer wants to create Javadocs independently.
|
||||||
|
-->
|
||||||
|
<target name="javadoc" depends="compile" description="Create Javadoc API documentation">
|
||||||
|
<mkdir dir="${dist.home}/docs"/>
|
||||||
|
<javadoc sourcepath="src" classpathref="compile.classpath" destdir="${dist.home}/docs"
|
||||||
|
packagenames="*"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ==================== Prepare Target ================================== -->
|
||||||
|
<!--
|
||||||
|
The "prepare" target is used to create the "build" destination directory,
|
||||||
|
and copy the static contents of your web application to it.
|
||||||
|
Normally, this task is executed indirectly when needed. -->
|
||||||
|
<target name="prepare">
|
||||||
|
<!-- Create build directory and copy static content -->
|
||||||
|
<mkdir dir="${webapp.build}"/>
|
||||||
|
<mkdir dir="${webapp.build}/WEB-INF/classes"/>
|
||||||
|
<mkdir dir="${webapp.build}/WEB-INF/classes/properties"/>
|
||||||
|
<mkdir dir="${webapp.build}/WEB-INF/tlds"/>
|
||||||
|
<!--mkdir dir="${webapp.build}/jsp"/-->
|
||||||
|
<copy todir="${webapp.build}">
|
||||||
|
<fileset dir="${webapp.dir}/web"/>
|
||||||
|
</copy>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ==================== setupWs task ==================== -->
|
||||||
|
<target name="setupWs"
|
||||||
|
description="invoke axis admin to deploy and expose VitroWs">
|
||||||
|
<!-- Notice that this can be run from the command line too:
|
||||||
|
$ java org.apache.axis.client.AdminClient \
|
||||||
|
-lhttp://localhost:8080/vivo/services/AdminService deploy.wsdd -->
|
||||||
|
<axis-admin
|
||||||
|
port="${axis.port}"
|
||||||
|
hostname="${axis.server}"
|
||||||
|
failonerror="true"
|
||||||
|
servletpath="${webapp.name}/services/AdminService"
|
||||||
|
debug="true"
|
||||||
|
xmlfile="${webapp.dir}/config/VitroWs3.wsdd" />
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ==================== axis prepare Target ======================== -->
|
||||||
|
<!--
|
||||||
|
The "axis" target is used to fill the "build" directory with files needed
|
||||||
|
for axis web services.
|
||||||
|
Normally, this task is executed indirectly when needed. -->
|
||||||
|
<target name="axisPrepare">
|
||||||
|
<copy todir="${webapp.build}/WEB-INF/classes">
|
||||||
|
<fileset dir="${webapp.dir}/config/axisproperties"
|
||||||
|
includes="**/*"
|
||||||
|
excludes=".svn"/>
|
||||||
|
</copy>
|
||||||
|
<copy file="${webapp.dir}/config/VitroWs3.wsdd"
|
||||||
|
todir="${webapp.build}/WEB-INF" />
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- =================== Create modifications directory ============== -->
|
||||||
|
<target name="prepareModDir"
|
||||||
|
description="create a directory structure to hold
|
||||||
|
local modifications"
|
||||||
|
depends="compile,test,copyEtc">
|
||||||
|
<mkdir dir="${modDir}"/>
|
||||||
|
<copy todir="${modDir}" >
|
||||||
|
<fileset dir="${webapp.build}">
|
||||||
|
<type type="dir"/>
|
||||||
|
<exclude name="WEB-INF/classes/"/>
|
||||||
|
<exclude name="jenaIngest"/>
|
||||||
|
<exclude name="src"/>
|
||||||
|
</fileset>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
</target>
|
||||||
|
|
||||||
|
|
||||||
|
</project>
|
62
webapp/config/VitroWs3.wsdd
Normal file
62
webapp/config/VitroWs3.wsdd
Normal file
|
@ -0,0 +1,62 @@
|
||||||
|
<deployment
|
||||||
|
xmlns="http://xml.apache.org/axis/wsdd/"
|
||||||
|
xmlns:myNS="http://vivo.cornell.edu/vitro/webservices/axis1/1.0"
|
||||||
|
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
|
||||||
|
<service name="VitroWs3" provider="java:RPC">
|
||||||
|
<parameter name="scope" value="application"/>
|
||||||
|
<parameter name="sendMultiRefs" value="false"/>
|
||||||
|
<parameter name="className" value="edu.cornell.mannlib.vitro.webservices.VitroWs"/>
|
||||||
|
<parameter name="allowedMethods" value="getFullTab,getTabsForPortal,getFullEntityById"/>
|
||||||
|
|
||||||
|
<!-- <beanMapping qname="myNS:Entity" xmlns:myNS="urn:edu.cornell.mannlib.vitro" -->
|
||||||
|
<!-- languageSpecificType="java:edu.cornell.mannlib.vitro.beans.Entity"/> -->
|
||||||
|
|
||||||
|
|
||||||
|
<typeMapping qname="myNS:Entity" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.Individual"
|
||||||
|
serializer="edu.cornell.mannlib.vitro.webservices.serializers.EntitySerFactory"
|
||||||
|
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||||
|
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
||||||
|
|
||||||
|
<typeMapping qname="myNS:Ents2Ents" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.ObjectPropertyStatement"
|
||||||
|
serializer="edu.cornell.mannlib.vitro.webservices.serializers.Ents2EntsSerFactory"
|
||||||
|
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||||
|
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
||||||
|
|
||||||
|
<typeMapping qname="myNS:Tab" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.Tab"
|
||||||
|
serializer="edu.cornell.mannlib.vitro.webservices.serializers.TabSerFactory"
|
||||||
|
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||||
|
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
||||||
|
|
||||||
|
<beanMapping qname="myNS:VClass" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.VClass"/>
|
||||||
|
|
||||||
|
<typeMapping qname="myNS:Property" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.ObjectProperty"
|
||||||
|
serializer="edu.cornell.mannlib.vitro.webservices.serializers.EshipRetroObjectPropertySerFactory"
|
||||||
|
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
|
||||||
|
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
<beanMapping qname="myNS:Property" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.ObjectProperty"/>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<beanMapping qname="myNS:PropertyInstance" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.PropertyInstance"/>
|
||||||
|
|
||||||
|
<!-- <beanMapping qname="myNS:Tab" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.Tab"/> -->
|
||||||
|
|
||||||
|
<beanMapping qname="myNS:Link" xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="java:edu.cornell.mannlib.vitro.webapp.beans.Link"/>
|
||||||
|
|
||||||
|
<beanMapping qname="myNS:role"
|
||||||
|
xmlns:myNS="urn:edu.cornell.mannlib.vitro"
|
||||||
|
languageSpecificType="urn:edu.cornell.mannlib.vitro.webapp.beans.BaseResourceBean$RoleLevel"/>
|
||||||
|
</service>
|
||||||
|
|
||||||
|
|
||||||
|
</deployment>
|
132
webapp/config/axisproperties/i18n.properties
Normal file
132
webapp/config/axisproperties/i18n.properties
Normal file
|
@ -0,0 +1,132 @@
|
||||||
|
############################################################
|
||||||
|
# i18n settings for the Axis Web-Application
|
||||||
|
#
|
||||||
|
|
||||||
|
#################### [i18n global setting] #################
|
||||||
|
#
|
||||||
|
locales=en ja
|
||||||
|
|
||||||
|
#################### [index.jsp] ###########################
|
||||||
|
#
|
||||||
|
|
||||||
|
### Header ###
|
||||||
|
#
|
||||||
|
language=Language
|
||||||
|
welcomeMessage=Hello! Welcome to Apache-Axis.
|
||||||
|
|
||||||
|
### Operation list ###
|
||||||
|
#
|
||||||
|
operationType=What do you want to do today?
|
||||||
|
|
||||||
|
# Validation
|
||||||
|
validation=Validation
|
||||||
|
validationURL=happyaxis.jsp
|
||||||
|
validationFootnote00=Validate the local installation's configuration
|
||||||
|
validationFootnote01=see below if this does not work.
|
||||||
|
|
||||||
|
# List
|
||||||
|
serviceList=List
|
||||||
|
serviceListURL=servlet/AxisServlet
|
||||||
|
serviceListFootnote=View the list of deployed Web services
|
||||||
|
|
||||||
|
# Call
|
||||||
|
callAnEndpoint=Call
|
||||||
|
callAnEndpointURL=EchoHeaders.jws?method=list
|
||||||
|
callAnEndpointFootnote00=Call a local endpoint that list's the caller's http headers
|
||||||
|
callAnEndpointFootnote01=(or see its <a href="EchoHeaders.jws?wsdl">WSDL</a>).
|
||||||
|
|
||||||
|
# Visit
|
||||||
|
visit=Visit
|
||||||
|
visitURL=http://ws.apache.org/axis/
|
||||||
|
visitFootnote=Visit the Apache-Axis Home Page
|
||||||
|
|
||||||
|
# Admin
|
||||||
|
admin=Administer Axis
|
||||||
|
adminURL=servlet/AdminServlet
|
||||||
|
adminFootnote=[disabled by default for security reasons]
|
||||||
|
|
||||||
|
# SOAPMonitor
|
||||||
|
soapMonitor=SOAPMonitor
|
||||||
|
soapMonitorURL=SOAPMonitor
|
||||||
|
soapMonitorFootnote=[disabled by default for security reasons]
|
||||||
|
|
||||||
|
# Sidenote
|
||||||
|
sideNote=To enable the disabled features, uncomment the appropriate declarations in WEB-INF/web.xml in the webapplication and restart it.
|
||||||
|
|
||||||
|
### Validating Axis ###
|
||||||
|
#
|
||||||
|
|
||||||
|
# Title
|
||||||
|
validatingAxis=Validating Axis
|
||||||
|
|
||||||
|
# Note 0
|
||||||
|
validationNote00=If the "happyaxis" validation page displays an exception instead of a status page, the likely cause is that you have multiple XML parsers in your classpath. Clean up your classpath by eliminating extraneous parsers.
|
||||||
|
|
||||||
|
# Note 1
|
||||||
|
validationNote01=If you have problems getting Axis to work, consult the Axis <a href="http://wiki.apache.org/ws/FrontPage/Axis">Wiki</a> and then try the Axis user mailing list.
|
||||||
|
|
||||||
|
#
|
||||||
|
#################### [index.jsp] ###########################
|
||||||
|
|
||||||
|
#################### [happyaxis.jsp] #######################
|
||||||
|
#
|
||||||
|
|
||||||
|
pageTitle=Axis Happiness Page
|
||||||
|
pageRole=Examining webapp configuration
|
||||||
|
|
||||||
|
### Needed Components ###
|
||||||
|
#
|
||||||
|
neededComponents=Needed Components
|
||||||
|
error=Error
|
||||||
|
warning=Warning
|
||||||
|
criticalErrorMessage=Axis will not work.
|
||||||
|
uncertainErrorMessage=Axis may not work.
|
||||||
|
# parameters = url, name
|
||||||
|
seeHomepage=<br> See <a href="{0}">{0}</a>
|
||||||
|
# parameters = category, classname, jarFile, errorText, url
|
||||||
|
couldNotFound=<p> {0}: could not find class {1} from file <b>{2}</b><br> {3} {4}<p>
|
||||||
|
# parameters = description, classname
|
||||||
|
foundClass00=Found {0} ( {1} )
|
||||||
|
# parameters = description, classname
|
||||||
|
foundClass01=Found {0} ( {1} ) at {2}
|
||||||
|
# parameters = category, classname, errorText, url
|
||||||
|
couldNotFoundDep=<p> {0}: could not find a dependency of class {1} from file <b>{2}</b><br> {3} {4}
|
||||||
|
# parameters = ncdfe.getMessage(), classname
|
||||||
|
theRootCause=<br>The root cause was: {0}<br>This can happen e.g. if {1} is in the 'common' classpath, but a dependency like activation.jar is only in the webapp classpath.<p>
|
||||||
|
# parameters = location
|
||||||
|
invalidSAAJ=<b>Error:</b> Invalid version of SAAJ API found in {0}. Make sure that Axis' saaj.jar precedes {0} in CLASSPATH.<br>
|
||||||
|
axisInstallation=Axis installation instructions
|
||||||
|
|
||||||
|
### Optional Components ###
|
||||||
|
#
|
||||||
|
|
||||||
|
optionalComponents=Optional Components
|
||||||
|
attachmentsError=Attachments will not work.
|
||||||
|
xmlSecurityError=XML Security is not supported.
|
||||||
|
httpsError=https is not supported.
|
||||||
|
|
||||||
|
happyResult00=<i>The core axis libraries are present.</i>
|
||||||
|
happyResult01=<i>The optional components are present.</i>
|
||||||
|
# parameters = needed(num of missing libraries)
|
||||||
|
unhappyResult00=<i>{0} core axis library(ies) are missing</i>
|
||||||
|
# parameters = wanted(num of missing libraries)
|
||||||
|
unhappyResult01=<i>{0} wanted optional axis librar(ies) are missing</i>
|
||||||
|
|
||||||
|
hintString=<B><I>Note:</I></B> On Tomcat 4.x and Java1.4, you may need to put libraries that contain java.* or javax.* packages into CATALINA_HOME/common/lib <br>jaxrpc.jar and saaj.jar are two such libraries.<p/>
|
||||||
|
noteString=<B><I>Note:</I></B> Even if everything this page probes for is present, there is no guarantee your web service will work, because there are many configuration options that we do not check for. These tests are <i>necessary</i> but not <i>sufficient</i><hr>
|
||||||
|
|
||||||
|
### Examining Application Server ###
|
||||||
|
#
|
||||||
|
apsExamining=Examining Application Server
|
||||||
|
recommendedParser=<b>We recommend <a href="http://xml.apache.org/xerces2-j/">Xerces 2</a> over Crimson as the XML parser for Axis</b>
|
||||||
|
couldNotCreateParser=Could not create an XML Parser
|
||||||
|
|
||||||
|
### Examining System Properties ###
|
||||||
|
#
|
||||||
|
sysExamining=Examining System Properties
|
||||||
|
sysPropError=System properties are not accessible.<p>
|
||||||
|
classFoundError=an unknown location
|
||||||
|
apsPlatform=Platform
|
||||||
|
|
||||||
|
#
|
||||||
|
#################### [happyaxis.jsp] #######################
|
127
webapp/config/axisproperties/i18n_ja.properties
Normal file
127
webapp/config/axisproperties/i18n_ja.properties
Normal file
|
@ -0,0 +1,127 @@
|
||||||
|
############################################################
|
||||||
|
# Japanese settings for the Axis Web-Application
|
||||||
|
#
|
||||||
|
|
||||||
|
#################### [index.jsp] ###########################
|
||||||
|
#
|
||||||
|
|
||||||
|
### Header ###
|
||||||
|
#
|
||||||
|
language=\u8a00\u8a9e
|
||||||
|
welcomeMessage=\u3053\u3093\u306b\u3061\u306f\uff01 Apache-Axis\u3078\u3088\u3046\u3053\u305d
|
||||||
|
|
||||||
|
### Operation list ###
|
||||||
|
#
|
||||||
|
operationType=\u4eca\u65e5\u306f\u4f55\u3092\u3057\u305f\u3044\u3067\u3059\u304b\uff1f
|
||||||
|
|
||||||
|
# Validation
|
||||||
|
validation=\u691c\u8a3c
|
||||||
|
validationURL=happyaxis.jsp
|
||||||
|
validationFootnote00=\u30ed\u30fc\u30ab\u30eb\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u72b6\u6cc1\u3092\u691c\u8a3c\u3059\u308b
|
||||||
|
validationFootnote01=\u3046\u307e\u304f\u6a5f\u80fd\u3057\u306a\u3044\u5834\u5408\u306f\u3001\u4e0b\u8a18\u300cAxis\u306e\u691c\u8a3c\u300d\u3092\u53c2\u7167
|
||||||
|
|
||||||
|
# List
|
||||||
|
serviceList=\u30ea\u30b9\u30c8
|
||||||
|
serviceListURL=servlet/AxisServlet
|
||||||
|
serviceListFootnote=\u30c7\u30d7\u30ed\u30a4\u6e08\u307f\u306eWeb\u30b5\u30fc\u30d3\u30b9\u30ea\u30b9\u30c8\u3092\u898b\u308b
|
||||||
|
|
||||||
|
# Call
|
||||||
|
callAnEndpoint=\u547c\u51fa\u3057
|
||||||
|
callAnEndpointURL=EchoHeaders.jws?method=list
|
||||||
|
callAnEndpointFootnote00=HTTP\u30d8\u30c3\u30c0\u306e\u4e00\u89a7\u8868\u793a\u3092\u884c\u3046\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8\u3092\u8d77\u52d5\u3059\u308b
|
||||||
|
callAnEndpointFootnote01=(\u3082\u3057\u304f\u306f<a href="EchoHeaders.jws?wsdl">WSDL</a>\u306e\u53c2\u7167)
|
||||||
|
|
||||||
|
# Visit
|
||||||
|
visit=\u8a2a\u554f
|
||||||
|
visitURL=http://ws.apache.org/axis/ja/index.html
|
||||||
|
visitFootnote=Apache Axis\u30db\u30fc\u30e0\u30da\u30fc\u30b8\u3092\u8a2a\u554f\u3059\u308b
|
||||||
|
|
||||||
|
# Admin
|
||||||
|
admin=Axis\u306e\u7ba1\u7406
|
||||||
|
adminURL=servlet/AdminServlet
|
||||||
|
adminFootnote=[\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u4e0a\u306e\u7406\u7531\u304b\u3089\u30c7\u30d5\u30a9\u30eb\u30c8\u3067\u306f\u5229\u7528\u4e0d\u53ef]
|
||||||
|
|
||||||
|
# SOAPMonitor
|
||||||
|
soapMonitor=SOAP\u30e2\u30cb\u30bf
|
||||||
|
soapMonitorURL=SOAPMonitor
|
||||||
|
soapMonitorFootnote=[\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u4e0a\u306e\u7406\u7531\u304b\u3089\u30c7\u30d5\u30a9\u30eb\u30c8\u3067\u306f\u5229\u7528\u4e0d\u53ef]
|
||||||
|
|
||||||
|
# Sidenote
|
||||||
|
sideNote=\u4e0a\u8a18\u306e\u30c7\u30d5\u30a9\u30eb\u30c8\u3067\u5229\u7528\u3067\u304d\u306a\u3044\u6a5f\u80fd\u3092\u6709\u52b9\u306b\u3059\u308b\u306b\u306f\u3001web\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u5185\u306eWEB-INF/web.xml\u30d5\u30a1\u30a4\u30eb\u306e\u8a72\u5f53\u3059\u308b\u5ba3\u8a00\u306e\u30b3\u30e1\u30f3\u30c8\u3092\u5916\u3057\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u518d\u8d77\u52d5\u3057\u3066\u4e0b\u3055\u3044\u3002
|
||||||
|
|
||||||
|
### Validating Axis ###
|
||||||
|
#
|
||||||
|
|
||||||
|
# Title
|
||||||
|
validatingAxis=Axis\u306e\u691c\u8a3c
|
||||||
|
|
||||||
|
# Note 0
|
||||||
|
validationNote00="happyaxis"\u691c\u8a3c\u30da\u30fc\u30b8\u304c\u72b6\u614b\u8868\u793a\u3067\u306f\u306a\u304f\u4f8b\u5916\u3092\u8868\u793a\u3059\u308b\u5834\u5408\u3001\u539f\u56e0\u3068\u3057\u3066\u306f\u30af\u30e9\u30b9\u30d1\u30b9\u5185\u306b\u8907\u6570\u306eXML\u30d1\u30fc\u30b5\u3092\u6307\u5b9a\u3057\u3066\u3044\u308b\u3053\u3068\u304c\u8003\u3048\u3089\u308c\u307e\u3059\u3002\u95a2\u4fc2\u306a\u3044\u30d1\u30fc\u30b5\u3092\u30af\u30e9\u30b9\u30d1\u30b9\u304b\u3089\u53d6\u308a\u9664\u3044\u3066\u307f\u3066\u4e0b\u3055\u3044\u3002
|
||||||
|
|
||||||
|
# Note 1
|
||||||
|
validationNote01=Axis\u3092\u52d5\u4f5c\u3055\u305b\u308b\u4e0a\u3067\u554f\u984c\u3092\u62b1\u3048\u3066\u3044\u308b\u5834\u5408\u306f\u3001\u307e\u305a<a href="http://wiki.apache.org/ws/ja/axis">Axis Wiki</a>\u3092\u53c2\u8003\u306b\u3057\u3001\u305d\u306e\u5f8c\u3067Axis\u30e6\u30fc\u30b6\u30e1\u30fc\u30ea\u30f3\u30b0\u30ea\u30b9\u30c8\u306b\u6295\u7a3f\u3057\u3066\u307f\u3066\u4e0b\u3055\u3044\u3002
|
||||||
|
|
||||||
|
#
|
||||||
|
#################### [index.jsp] ###########################
|
||||||
|
|
||||||
|
#################### [happyaxis.jsp] #######################
|
||||||
|
#
|
||||||
|
pageTitle=Axis Happiness Page
|
||||||
|
pageRole=webapp\u306e\u69cb\u6210\u306b\u95a2\u3059\u308b\u8abf\u67fb
|
||||||
|
|
||||||
|
### Needed Components ###
|
||||||
|
#
|
||||||
|
neededComponents=\u5fc5\u9808\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8
|
||||||
|
error=\u30a8\u30e9\u30fc
|
||||||
|
warning=\u8b66\u544a
|
||||||
|
criticalErrorMessage=\u304a\u305d\u3089\u304fAxis\u306f\u52d5\u304d\u307e\u305b\u3093\u3002
|
||||||
|
uncertainErrorMessage=Axis\u306f\u52d5\u304b\u306a\u3044\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002
|
||||||
|
# parameters = url, name
|
||||||
|
seeHomepage=<br> <a href="{0}">{0}</a>\u3092\u898b\u3066\u4e0b\u3055\u3044\u3002
|
||||||
|
# parameters = category, classname, jarFile, errorText, url
|
||||||
|
couldNotFound=<p> {0}: <b>{2}</b>\u30d5\u30a1\u30a4\u30eb\u304c\u63d0\u4f9b\u3059\u308b{1}\u30af\u30e9\u30b9\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3002<br> {3} {4}<p>
|
||||||
|
# parameters = description, classname
|
||||||
|
foundClass00={0} ( {1} ) \u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f\u3002
|
||||||
|
# parameters = description, classname, location
|
||||||
|
foundClass01={0} ( {1} ) \u304c{2}\u3067\u898b\u3064\u304b\u308a\u307e\u3057\u305f\u3002
|
||||||
|
# parameters = category, classname, errorText, url
|
||||||
|
couldNotFoundDep=<p> {0}: <b>{2}</b>\u30d5\u30a1\u30a4\u30eb\u304c\u63d0\u4f9b\u3059\u308b{1}\u30af\u30e9\u30b9\u306e\u4f9d\u5b58\u95a2\u4fc2\u304c\u89e3\u6c7a\u3067\u304d\u307e\u305b\u3093\u3002<br> {3} {4}
|
||||||
|
# parameters = ncdfe.getMessage(), classname
|
||||||
|
theRootCause=<br>\u6839\u672c\u539f\u56e0: {0}<br>\u3053\u306e\u30a8\u30e9\u30fc\u306f\u6b21\u306e\u3088\u3046\u306a\u5834\u5408\u306b\u767a\u751f\u3059\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002\u300c\u5171\u901a\u306e\u300d\u30af\u30e9\u30b9\u30d1\u30b9\u306b{1}\u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u306b\u3082\u304b\u304b\u308f\u3089\u305a\u3001activation.jar \u306e\u3088\u3046\u306a\u4f9d\u5b58\u3059\u308b\u30e9\u30a4\u30d6\u30e9\u30ea\u304cwebapp\u306e\u30af\u30e9\u30b9\u30d1\u30b9\u3060\u3051\u306b\u3057\u304b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u306a\u3044\u3088\u3046\u306a\u5834\u5408\u3067\u3059\u3002<p>
|
||||||
|
# parameters = location
|
||||||
|
invalidSAAJ=<b>\u30a8\u30e9\u30fc:</b> {0}\u306b\u9069\u5207\u3067\u306a\u3044\u30d0\u30fc\u30b8\u30e7\u30f3\u306eSAAJ API\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f\u3002Axis\u306esaaj.jar\u3092\u3001CLASSPATH\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b{0} \u3088\u308a\u3082\u524d\u65b9\u306b\u8a2d\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002<br>
|
||||||
|
axisInstallation=Axis\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u624b\u9806
|
||||||
|
|
||||||
|
### Optional Components ###
|
||||||
|
#
|
||||||
|
optionalComponents=\u30aa\u30d7\u30b7\u30e7\u30ca\u30eb\uff65\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8
|
||||||
|
attachmentsError=\u304a\u305d\u3089\u304fAttachments\u306f\u6a5f\u80fd\u3057\u307e\u305b\u3093\u3002
|
||||||
|
xmlSecurityError=XML Security\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u305b\u3093\u3002
|
||||||
|
httpsError=https\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u307e\u305b\u3093\u3002
|
||||||
|
|
||||||
|
happyResult00=<i>axis\u306e\u30b3\u30a2\uff65\u30e9\u30a4\u30d6\u30e9\u30ea\u306f\u5168\u3066\u5b58\u5728\u3057\u3066\u3044\u307e\u3059\u3002</i>
|
||||||
|
happyResult01=<i>\u30aa\u30d7\u30b7\u30e7\u30ca\u30eb\uff65\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306f\u5b58\u5728\u3057\u3066\u3044\u307e\u3059\u3002</i>
|
||||||
|
# parameters = needed(num of missing libraries)
|
||||||
|
unhappyResult00=<i>axis\u306e\u30b3\u30a2\uff65\u30e9\u30a4\u30d6\u30e9\u30ea\u304c{0}\u3064\u6b20\u3051\u3066\u3044\u307e\u3059\u3002</i>
|
||||||
|
# parameters = wanted(num of missing libraries)
|
||||||
|
unhappyResult01=<i>axis\u306e\u30aa\u30d7\u30b7\u30e7\u30ca\u30eb\uff65\u30e9\u30a4\u30d6\u30e9\u30ea\u304c{0}\u3064\u6b20\u3051\u3066\u3044\u307e\u3059\u3002</i>
|
||||||
|
|
||||||
|
hintString=<B><I>\u6ce8\u610f:</I></B> Tomcat 4.x \u3068 Java1.4 \u4e0a\u3067\u306f\u3001CATALINA_HOME/common/lib \u306b\u3001java.* \u3082\u3057\u304f\u306f javax.* \u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u542b\u3080\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u914d\u7f6e\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002<br>\u4f8b\u3048\u3070 jaxrpc.jar \u3068 saaj.jar \u306f\u3001\u305d\u306e\u3088\u3046\u306a\u30e9\u30a4\u30d6\u30e9\u30ea\u3067\u3059\u3002<p/>
|
||||||
|
noteString=<B><I>\u6ce8\u610f:</I></B> \u30da\u30fc\u30b8\u306b\u5168\u3066\u306e\u8abf\u67fb\u7d50\u679c\u304c\u8868\u793a\u3055\u308c\u305f\u3068\u3057\u3066\u3082\u3001\u30c1\u30a7\u30c3\u30af\u3067\u304d\u306a\u3044\u69cb\u6210\u30aa\u30d7\u30b7\u30e7\u30f3\u3082\u591a\u3044\u305f\u3081\u3001\u3042\u306a\u305f\u306eWeb\u30b5\u30fc\u30d3\u30b9\u304c\u6b63\u5e38\u306b\u6a5f\u80fd\u3059\u308b\u4fdd\u969c\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u3053\u308c\u3089\u306e\u30c6\u30b9\u30c8\u306f<i>\u5fc5\u8981</i>\u306a\u3082\u306e\u3067\u3059\u304c\u3001<i>\u5341\u5206</i>\u306a\u3082\u306e\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002
|
||||||
|
|
||||||
|
### Examining Application Server ###
|
||||||
|
#
|
||||||
|
apsExamining=\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\uff65\u30b5\u30fc\u30d0\u30fc\u306b\u95a2\u3059\u308b\u8abf\u67fb
|
||||||
|
recommendedParser=<b>Axis\u3067\u4f7f\u7528\u3059\u308bXML\u30d1\u30fc\u30b5\u30fc\u306b\u306f Crimson \u3067\u306f\u306a\u304f\u3001<a href="http://xml.apache.org/xerces2-j/">Xerces 2</a> \u3092\u63a8\u5968\u3057\u3066\u3044\u307e\u3059\u3002</b>
|
||||||
|
couldNotCreateParser=XML Parser\u3092\u751f\u6210\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\u3002
|
||||||
|
|
||||||
|
### Examining System Properties ###
|
||||||
|
#
|
||||||
|
sysExamining=\u30b7\u30b9\u30c6\u30e0\uff65\u30d7\u30ed\u30d1\u30c6\u30a3\u306b\u95a2\u3059\u308b\u8abf\u67fb
|
||||||
|
sysPropError=\u30b7\u30b9\u30c6\u30e0\uff65\u30d7\u30ed\u30d1\u30c6\u30a3\u306b\u30a2\u30af\u30bb\u30b9\u3067\u304d\u307e\u305b\u3093\u3002<p>
|
||||||
|
|
||||||
|
classFoundError=\u4e0d\u660e\u306a\u5834\u6240
|
||||||
|
apsPlatform=\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0
|
||||||
|
|
||||||
|
#
|
||||||
|
#################### [happyaxis.jsp] #######################
|
68
webapp/config/default.clone.log4j.properties
Normal file
68
webapp/config/default.clone.log4j.properties
Normal file
|
@ -0,0 +1,68 @@
|
||||||
|
LuceneSetup.indexDir=${luceneIndexDir}
|
||||||
|
|
||||||
|
# The default.log4j.properties file will only get used if there is no
|
||||||
|
# debugging.log4j.properties file in the directory otherwise, the debugging.log4j.properties will
|
||||||
|
# be deployed and used.
|
||||||
|
|
||||||
|
# If you want to have a logging config for debugging
|
||||||
|
# and testing copy the default.log4j.properties file to debugging.log4j.properties,
|
||||||
|
# make your modifications and deploy. debugging.log4j.properties
|
||||||
|
# will be used instead of the default.log4j.properties file.
|
||||||
|
|
||||||
|
# levels: <-- more messages ALL DEBUG INFO WARN ERROR FATAL OFF fewer messages -->
|
||||||
|
|
||||||
|
log4j.rootLogger=WARN, AllAppender
|
||||||
|
log4j.appender.AllAppender=org.apache.log4j.RollingFileAppender
|
||||||
|
log4j.appender.AllAppender.File= ${tomcat.home}/logs/${clone}.all.log
|
||||||
|
log4j.appender.AllAppender.MaxFileSize=10MB
|
||||||
|
log4j.appender.AllAppender.MaxBackupIndex=10
|
||||||
|
log4j.appender.AllAppender.layout=org.apache.log4j.PatternLayout
|
||||||
|
log4j.appender.AllAppender.layout.ConversionPattern=%p %t %c - %m%n
|
||||||
|
|
||||||
|
log4j.logger.org.apache.catalina=INFO, AllAppender
|
||||||
|
log4j.logger.org.diretwebremoting=ERROR, AllAppender
|
||||||
|
|
||||||
|
#log4j.logger.edu.cornell.mannlib.vitro.webapp.auth=INFO, AllAppender
|
||||||
|
|
||||||
|
#### setup a debugging logger
|
||||||
|
log4j.appender.DebuggingAppender=org.apache.log4j.FileAppender
|
||||||
|
log4j.appender.DebuggingAppender.File=${tomcat.home}/logs/${clone}.debugging.log
|
||||||
|
log4j.appender.DebuggingAppender.layout=org.apache.log4j.PatternLayout
|
||||||
|
log4j.appender.DebuggingAppender.layout.ConversionPattern=%5r %-5p [%t] %c{2} - %m%n
|
||||||
|
|
||||||
|
#log4j.logger.edu.cornell.mannlib.vitro.webapp=DEBUG, DebuggingAppender
|
||||||
|
#log4j.logger.edu.cornell.mannlib.vitro.webapp.auth=DEBUG, DebuggingAppender
|
||||||
|
#log4j.logger.edu.cornell.mannlib.vitro.webapp.dao.jena=DEBUG, DebuggingAppender
|
||||||
|
|
||||||
|
|
||||||
|
#### setup a debugging logger for the JSPs
|
||||||
|
#JSPs need to have a line like:
|
||||||
|
#<% org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger("edu.cornell.mannlib.vitro.webapp.jsp.SOMEIDFORYOURJSP"); %>
|
||||||
|
log4j.appender.JspAppender=org.apache.log4j.FileAppender
|
||||||
|
log4j.appender.JspAppender.File=${tomcat.home}/logs/${clone}.jsp.log
|
||||||
|
log4j.appender.JspAppender.layout=org.apache.log4j.PatternLayout
|
||||||
|
log4j.appender.JspAppender.layout.ConversionPattern=%5r %-5p [%t] %c{2} - %m%n
|
||||||
|
|
||||||
|
log4j.logger.edu.cornell.mannlib.vitro.webapp.jsp=INFO, JspAppender
|
||||||
|
#log4j.logger.edu.cornell.mannlib.vitro.webapp.jsp.edit=DEBUG, JspAppender
|
||||||
|
|
||||||
|
|
||||||
|
#### setup a pellet logger
|
||||||
|
log4j.appender.PelletAppender=org.apache.log4j.FileAppender
|
||||||
|
log4j.appender.PelletAppender.File=${tomcat.home}/logs/${clone}.pellet.log
|
||||||
|
log4j.appender.PelletAppender.layout=org.apache.log4j.PatternLayout
|
||||||
|
log4j.appender.PelletAppender.layout.ConversionPattern=%5r %-5p [%t] %c{2} - %m%n
|
||||||
|
|
||||||
|
log4j.logger.org.mindswap=WARN, PelletAppender
|
||||||
|
|
||||||
|
|
||||||
|
#### setup a jena logger
|
||||||
|
log4j.appender.JenaAppender=org.apache.log4j.FileAppender
|
||||||
|
log4j.appender.JenaAppender.File=${tomcat.home}/logs/${clone}.jena.log
|
||||||
|
log4j.appender.JenaAppender.layout=org.apache.log4j.PatternLayout
|
||||||
|
log4j.appender.JenaAppender.layout.ConversionPattern=%5r %-5p [%t] %c{2} - %m%n
|
||||||
|
|
||||||
|
log4j.logger.com.hp.hpl=WARN, JenaAppender
|
||||||
|
|
||||||
|
# documentation for this file can be found here:
|
||||||
|
# http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PropertyConfigurator.html#doConfigure(java.lang.String,%20org.apache.log4j.spi.LoggerRepository)
|
68
webapp/config/default.log4j.properties
Normal file
68
webapp/config/default.log4j.properties
Normal file
|
@ -0,0 +1,68 @@
|
||||||
|
LuceneSetup.indexDir=${luceneIndexDir}
|
||||||
|
|
||||||
|
# The default.log4j.properties file will only get used if there is no
|
||||||
|
# debugging.log4j.properties file in the directory otherwise, the debugging.log4j.properties will
|
||||||
|
# be deployed and used.
|
||||||
|
|
||||||
|
# If you want to have a logging config for debugging
|
||||||
|
# and testing copy the default.log4j.properties file to debugging.log4j.properties,
|
||||||
|
# make your modifications and deploy. debugging.log4j.properties
|
||||||
|
# will be used instead of the default.log4j.properties file.
|
||||||
|
|
||||||
|
# levels: <-- more messages ALL DEBUG INFO WARN ERROR FATAL OFF fewer messages -->
|
||||||
|
|
||||||
|
log4j.rootLogger=WARN, AllAppender
|
||||||
|
log4j.appender.AllAppender=org.apache.log4j.RollingFileAppender
|
||||||
|
log4j.appender.AllAppender.File= ${tomcat.home}/logs/vitro.all.log
|
||||||
|
log4j.appender.AllAppender.MaxFileSize=10MB
|
||||||
|
log4j.appender.AllAppender.MaxBackupIndex=10
|
||||||
|
log4j.appender.AllAppender.layout=org.apache.log4j.PatternLayout
|
||||||
|
log4j.appender.AllAppender.layout.ConversionPattern=%p %t %c - %m%n
|
||||||
|
|
||||||
|
log4j.logger.org.apache.catalina=INFO, AllAppender
|
||||||
|
log4j.logger.org.diretwebremoting=ERROR, AllAppender
|
||||||
|
|
||||||
|
#log4j.logger.edu.cornell.mannlib.vitro.webapp.auth=INFO, AllAppender
|
||||||
|
|
||||||
|
#### setup a debugging logger
|
||||||
|
log4j.appender.DebuggingAppender=org.apache.log4j.FileAppender
|
||||||
|
log4j.appender.DebuggingAppender.File=${tomcat.home}/logs/vitro.debugging.log
|
||||||
|
log4j.appender.DebuggingAppender.layout=org.apache.log4j.PatternLayout
|
||||||
|
log4j.appender.DebuggingAppender.layout.ConversionPattern=%5r %-5p [%t] %c{2} - %m%n
|
||||||
|
|
||||||
|
#log4j.logger.edu.cornell.mannlib.vitro.webapp=DEBUG, DebuggingAppender
|
||||||
|
#log4j.logger.edu.cornell.mannlib.vitro.webapp.auth=DEBUG, DebuggingAppender
|
||||||
|
#log4j.logger.edu.cornell.mannlib.vitro.webapp.dao.jena=DEBUG, DebuggingAppender
|
||||||
|
|
||||||
|
|
||||||
|
#### setup a debugging logger for the JSPs
|
||||||
|
#JSPs need to have a line like:
|
||||||
|
#<% org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger("edu.cornell.mannlib.vitro.webapp.jsp.SOMEIDFORYOURJSP"); %>
|
||||||
|
log4j.appender.JspAppender=org.apache.log4j.FileAppender
|
||||||
|
log4j.appender.JspAppender.File=${tomcat.home}/logs/vitro.jsp.log
|
||||||
|
log4j.appender.JspAppender.layout=org.apache.log4j.PatternLayout
|
||||||
|
log4j.appender.JspAppender.layout.ConversionPattern=%5r %-5p [%t] %c{2} - %m%n
|
||||||
|
|
||||||
|
log4j.logger.edu.cornell.mannlib.vitro.webapp.jsp=INFO, JspAppender
|
||||||
|
#log4j.logger.edu.cornell.mannlib.vitro.webapp.jsp.edit=DEBUG, JspAppender
|
||||||
|
|
||||||
|
|
||||||
|
#### setup a pellet logger
|
||||||
|
log4j.appender.PelletAppender=org.apache.log4j.FileAppender
|
||||||
|
log4j.appender.PelletAppender.File=${tomcat.home}/logs/vitro.pellet.log
|
||||||
|
log4j.appender.PelletAppender.layout=org.apache.log4j.PatternLayout
|
||||||
|
log4j.appender.PelletAppender.layout.ConversionPattern=%5r %-5p [%t] %c{2} - %m%n
|
||||||
|
|
||||||
|
log4j.logger.org.mindswap=WARN, PelletAppender
|
||||||
|
|
||||||
|
|
||||||
|
#### setup a jena logger
|
||||||
|
log4j.appender.JenaAppender=org.apache.log4j.FileAppender
|
||||||
|
log4j.appender.JenaAppender.File=${tomcat.home}/logs/vitro.jena.log
|
||||||
|
log4j.appender.JenaAppender.layout=org.apache.log4j.PatternLayout
|
||||||
|
log4j.appender.JenaAppender.layout.ConversionPattern=%5r %-5p [%t] %c{2} - %m%n
|
||||||
|
|
||||||
|
log4j.logger.com.hp.hpl=WARN, JenaAppender
|
||||||
|
|
||||||
|
# documentation for this file can be found here:
|
||||||
|
# http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PropertyConfigurator.html#doConfigure(java.lang.String,%20org.apache.log4j.spi.LoggerRepository)
|
51
webapp/config/dwr.xml
Executable file
51
webapp/config/dwr.xml
Executable file
|
@ -0,0 +1,51 @@
|
||||||
|
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN"
|
||||||
|
"http://getahead.org/dwr//dwr20.dtd">
|
||||||
|
|
||||||
|
<dwr>
|
||||||
|
<allow>
|
||||||
|
|
||||||
|
<!-- create blocks define how the java object on the server gets created, -->
|
||||||
|
<!-- long it lives, what java class and what name in javascript. -->
|
||||||
|
<!-- creator: "new" "scripted" "spring" -->
|
||||||
|
<!-- scope: "application" "session" "request" "page" -->
|
||||||
|
<!-- that the "request" scope is only useful for static methods -->
|
||||||
|
|
||||||
|
<create creator="new" javascript="PropertyDWR" scope="page">
|
||||||
|
<param name="class" value="edu.cornell.mannlib.vitro.webapp.dwr.PropertyDWR"/>
|
||||||
|
</create>
|
||||||
|
|
||||||
|
<create creator="new" javascript="EntityDWR" scope="page">
|
||||||
|
<param name="class" value="edu.cornell.mannlib.vitro.webapp.dwr.EntityDWR" />
|
||||||
|
</create>
|
||||||
|
|
||||||
|
<create creator="new" javascript="VClassDWR" scope="page">
|
||||||
|
<param name="class" value="edu.cornell.mannlib.vitro.webapp.dwr.VClassDWR"/>
|
||||||
|
</create>
|
||||||
|
|
||||||
|
<!-- Convert blocks define how a types are moved between java
|
||||||
|
land and java script land -->
|
||||||
|
|
||||||
|
<convert converter="bean" match="edu.cornell.mannlib.vitro.webapp.beans.VClass">
|
||||||
|
<param name="include" value="name,URI,groupURI,hidden,shortDef,hiddenFromPublicDisplay,hiddenFromEditDisplay"/>
|
||||||
|
</convert>
|
||||||
|
|
||||||
|
<convert converter="bean" match="edu.cornell.mannlib.vitro.webapp.beans.Individual">
|
||||||
|
<param name="include" value="name,moniker,URI,vClassURI"/>
|
||||||
|
</convert>
|
||||||
|
|
||||||
|
<convert converter="bean" match="edu.cornell.mannlib.vitro.webapp.beans.PropertyInstance"/>
|
||||||
|
|
||||||
|
<!--<convert converter="object" match="edu.cornell.mannlib.vitro.beans.Entity">-->
|
||||||
|
<!--<param name="include" value="id, name, moniker, vClassId"/>-->
|
||||||
|
<!--</convert>-->
|
||||||
|
|
||||||
|
<!--<convert converter="object" match="edu.cornell.mannlib.vitro.webapp.beans.IndividualWebapp">-->
|
||||||
|
<!--<param name="force" value="true"/>-->
|
||||||
|
<!--<param name="include" value="URI, namespace, localName, name, moniker, vclassURI"/>-->
|
||||||
|
<!--</convert>-->
|
||||||
|
|
||||||
|
<convert converter="bean" match="Date"/>
|
||||||
|
</allow>
|
||||||
|
|
||||||
|
|
||||||
|
</dwr>
|
11
webapp/config/example.LuceneSetup.properties
Normal file
11
webapp/config/example.LuceneSetup.properties
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
#this is an example of what needs to be in this
|
||||||
|
#file to setup the lucene index directory
|
||||||
|
#
|
||||||
|
# The default location is /usr/local/lucene/vitrodefault
|
||||||
|
|
||||||
|
#You could hard code the location like this:
|
||||||
|
#LuceneSetup.indexDir=/usr/local/lucene/example
|
||||||
|
|
||||||
|
#this line will be setup by ant to work for clones
|
||||||
|
#if you hardcode the dir, this line should be commented out
|
||||||
|
LuceneSetup.indexDir=${luceneIndexDir}
|
80
webapp/config/example.connection.properties
Executable file
80
webapp/config/example.connection.properties
Executable file
|
@ -0,0 +1,80 @@
|
||||||
|
################################################################################
|
||||||
|
# DataSource properties file
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
######################### DataSource Properties ################################
|
||||||
|
|
||||||
|
VitroConnection.DataSource.url=jdbc:mysql://localhost/vitro
|
||||||
|
VitroConnection.DataSource.username=vitroweb
|
||||||
|
VitroConnection.DataSource.password=vitrovitro
|
||||||
|
|
||||||
|
####################### Other Important Properties #############################
|
||||||
|
|
||||||
|
# CHANGE the following property unless you're using Cornell's VIVO ontology
|
||||||
|
Vitro.defaultNamespace=http://vivo.library.cornell.edu/ns/0.1#
|
||||||
|
|
||||||
|
# Uncomment this next line and specify an SMTP host to activate the Contact Us form
|
||||||
|
#Vitro.smtpHost=
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# maximum number of connections to the db server
|
||||||
|
# This must not be greater than the mysql max_connection parameter.
|
||||||
|
# defaults to 40
|
||||||
|
#VitroConnection.DataSource.MaxActive=40
|
||||||
|
|
||||||
|
# maximum number of connections to the db server to keep
|
||||||
|
# around when nothing is happening.
|
||||||
|
# defaults to 10
|
||||||
|
#VitroConnection.DataSource.MaxIdle=10
|
||||||
|
|
||||||
|
# Time to wait in msec for a result from the sql server
|
||||||
|
# defaults to 10000
|
||||||
|
#VitroConnection.DataSource.MaxWait=10000
|
||||||
|
|
||||||
|
# query to use to test to see if a connection to the db server is live.
|
||||||
|
# defaults to SELECT 1
|
||||||
|
#VitroConnection.DataSource.ValidationQuery=SELECT 1
|
||||||
|
|
||||||
|
# should the connection pool test the connections it gets from the pool?
|
||||||
|
#defaults to true
|
||||||
|
#VitroConnection.DataSource.TestOnBorrow=true
|
||||||
|
|
||||||
|
# should the connection pool test connections it puts back in pool?
|
||||||
|
#defaults to true
|
||||||
|
#VitroConnection.DataSource.TestOnReturn=true
|
||||||
|
|
||||||
|
# Nnumber of milliseconds to sleep between runs of the idle object
|
||||||
|
# evictor thread. When non-positive, no idle object evictor thread will
|
||||||
|
# be run. defaults to 30min
|
||||||
|
#VitroConnection.DataSource.TimeBetweenEvictions=
|
||||||
|
|
||||||
|
# The number of objects to examine during each
|
||||||
|
# run of the idle object evictor thread (if any).
|
||||||
|
# defaults to 3
|
||||||
|
#VitroConnection.DataSource.TestsPerEviction=3
|
||||||
|
|
||||||
|
# The minimum amount of time
|
||||||
|
# an object may sit idle in the pool before it is eligable for eviction
|
||||||
|
# by the idle object evictor (if any).
|
||||||
|
# defaults to 30min
|
||||||
|
#VitroConnection.DataSource.MinEvictionIdleTime=
|
||||||
|
|
||||||
|
################################################ # other notes:
|
||||||
|
# The file checked into source control is example.connection.properties so
|
||||||
|
# that if you have a connection.properties on your machine it will not be
|
||||||
|
# under source control. This is useful so that your customizations for your
|
||||||
|
# database setup are less likely to be checked into source control and then
|
||||||
|
# overwrite other folks' customizations.
|
26
webapp/config/example.upload.properties
Normal file
26
webapp/config/example.upload.properties
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
# The UploadImagesServlet will upload the images to a directory
|
||||||
|
# that is under tomcat and serve them from there.
|
||||||
|
# This causes a problem when the tomcat/webapps dir is deleted
|
||||||
|
# or deployed because you will lose all the images that the
|
||||||
|
# curators have uploaded. We deal with this by copying
|
||||||
|
# the files to another directory, one that is under version control.
|
||||||
|
|
||||||
|
# This property indicates which non-tomcat directory to save the images in.
|
||||||
|
# ${uploadDir} is defined in the main build.xml via the following statements:
|
||||||
|
#
|
||||||
|
# <!-- defined in globalbuild.properties -->
|
||||||
|
# <property name="source.dir" value="{source.home}"/>
|
||||||
|
# <property name="uploadDir" value="{source.dir}/webapp/web" />
|
||||||
|
#
|
||||||
|
# But, this value will be replaced by the Vitro/clones/build.xml
|
||||||
|
# to point to the clones/{clone}/modifications directory based on the following
|
||||||
|
# <property file="./config/globalbuild.properties"/>
|
||||||
|
# <property name="source.dir" value="{source.home}"/>
|
||||||
|
# <property name="uploadDir" value="${source.dir}/clones/${clone}/modifications"/>
|
||||||
|
#
|
||||||
|
# The UploadImagesServlet.getSourceDirName() method then looks at this parameter
|
||||||
|
# in the upload.properties file, which file is stuck by the clones/build.xml file
|
||||||
|
# into the clone's modifications/WEB-INF/classes directory:
|
||||||
|
UploadImagesServlet.sourceDirName=${uploadDir}
|
||||||
|
|
||||||
|
|
149
webapp/config/setenv.sh
Executable file
149
webapp/config/setenv.sh
Executable file
|
@ -0,0 +1,149 @@
|
||||||
|
JAVA_HOME=/usr/local/java/jdk1.5.0_06
|
||||||
|
TOMCAT_HOME=/usr/local/tomcat
|
||||||
|
CATALINA_HOME=/usr/local/tomcat
|
||||||
|
|
||||||
|
#these are for options that are only set at start time
|
||||||
|
# useful for jmx or remote debugging.
|
||||||
|
START_OPTS=""
|
||||||
|
|
||||||
|
# the gc log and the jvm options are saved in the logs directory
|
||||||
|
DATESTR=`date +%Y%m%d.%H%M`
|
||||||
|
GCFILE=$CATALINA_HOME/logs/gc$DATESTR.txt
|
||||||
|
OPT_FILE=$CATALINA_HOME/logs/opts$DATESTR.txt
|
||||||
|
|
||||||
|
# This is an example of the setenv.sh file from
|
||||||
|
# cugir-tng.mannlib.cornell.edu
|
||||||
|
|
||||||
|
# To use this file copy it to /usr/local/tomcat/bin/setenv.sh
|
||||||
|
# When catalina.sh is called this file will be used to
|
||||||
|
# set the environmental variables that are
|
||||||
|
# in effect when starting the JVM for tomcat.
|
||||||
|
|
||||||
|
# java memory tools:
|
||||||
|
# jconsole is useful to watch the survivor, Edan, tenured and
|
||||||
|
# perm spaces. gcviewer is useful for statistics.
|
||||||
|
|
||||||
|
#An acceptable group of settings, use this as a starting point
|
||||||
|
# CATALINA_OPTS=" -Xms1024m -Xmx1024m -XX:MaxPermSize=128m \
|
||||||
|
# -XX:+UseParallelGC \
|
||||||
|
# -Dfile.encoding=UTF-8 \
|
||||||
|
# -Xloggc:$GCFILE -XX:+PrintGCDetails -XX:+PrintGCTimeStamps "
|
||||||
|
|
||||||
|
# attempting a low GCTimeRatio,
|
||||||
|
# GCTimeRatio indicates how much time to spend in gc vs. application
|
||||||
|
# app time / gc time = 1 / (1+ GCTimeRatio)
|
||||||
|
# GCTimeRatio of 11 is aprox %8 of the time in GC
|
||||||
|
#
|
||||||
|
# Result: best so far. After about 12 hours the heap is
|
||||||
|
# hovering around 100mb. This is the first group of settings
|
||||||
|
# that seem like they will be stable for a long period of time.
|
||||||
|
# throughput is 98.79%
|
||||||
|
# This is a log for these settings: /usr/local/tomcat/logs/gc20060809.1638.txt
|
||||||
|
CATALINA_OPTS=" -Xms1024m -Xmx1024m -XX:MaxPermSize=128m \
|
||||||
|
-XX:+UseParallelGC -XX:GCTimeRatio=11 -XX:+UseAdaptiveSizePolicy \
|
||||||
|
-Dfile.encoding=UTF-8 \
|
||||||
|
-Xloggc:$GCFILE -XX:+PrintGCDetails -XX:+PrintGCTimeStamps "
|
||||||
|
|
||||||
|
# bdc34 2006-08-08
|
||||||
|
# Trying adaptiveSizePolicy with parallel GC.
|
||||||
|
# Result: This did an out of memory when a crawler came along
|
||||||
|
# but even before that it looked bad.
|
||||||
|
# CATALINA_OPTS="-Xms1024m -Xmx1024m -XX:MaxPermSize=128m \
|
||||||
|
# -XX:NewSize=512m \
|
||||||
|
# -XX:+UseParallelGC -XX:+UseAdaptiveSizePolicy \
|
||||||
|
# -Dfile.encoding=UTF-8 \
|
||||||
|
# -XX:+PrintGCDetails -XX:+PrintGCTimeStamps \
|
||||||
|
# -Xloggc:$GCFILE "
|
||||||
|
|
||||||
|
# bdc34 2006-08-08
|
||||||
|
# Trying the concurrent gc
|
||||||
|
# Result: after 10min it seems odd. The survivor space doesn't get
|
||||||
|
# used at all. It is always showing up in jconsole as zero mb. So
|
||||||
|
# objects are going directly from the edan space to the tenured space?
|
||||||
|
#
|
||||||
|
# Result: sort of rapid growth of heap with odd paterns of collection.
|
||||||
|
# doesn't seem useful
|
||||||
|
# CATALINA_OPTS="-Xms512m -Xmx512m -XX:MaxPermSize=256m \
|
||||||
|
# -XX:+UseConcMarkSweepGC \
|
||||||
|
# -XX:+UseAdaptiveSizePolicy \
|
||||||
|
# -XX:-TraceClassUnloading \
|
||||||
|
# -Dfile.encoding=UTF-8 \
|
||||||
|
# -XX:+PrintGCDetails -XX:+PrintGCTimeStamps \
|
||||||
|
# -Xloggc:/usr/local/tomcat/logs/gc.txt "
|
||||||
|
|
||||||
|
# bdc34 2006-08-07
|
||||||
|
# Attempting to increase the PermGen Size. Notice
|
||||||
|
# that PermGen size is in addition to the heap
|
||||||
|
# size specified in -Xmx.
|
||||||
|
#
|
||||||
|
# Also removing GCTimeRatio to allow for
|
||||||
|
# a lot of garbage collecting. I don't want
|
||||||
|
# any bound on GC, time or throughput. I don't
|
||||||
|
# know if not specifying a value will achieve this.
|
||||||
|
#
|
||||||
|
# Logging gc to /usr/local/tomcat/logs/gc.txt
|
||||||
|
# so I can look at it with http://www.tagtraum.com/gcviewer.html
|
||||||
|
#
|
||||||
|
# Setting max heap to initial heap to avoid growing the
|
||||||
|
# heap and associated gc cycles.
|
||||||
|
#
|
||||||
|
# Result: I ran this for two days and it seemed to work well.
|
||||||
|
# It would do minor collections for about 20h. The heap would
|
||||||
|
# get to around 1G and then the jvm would do
|
||||||
|
# a full colleciton that would drop the heap down to 50m.
|
||||||
|
# It seems that having the heap at 1G only buys time and
|
||||||
|
# that the application could live in 128-256mb.
|
||||||
|
# gcviewer was reporting 99.0% collection rates.
|
||||||
|
# It seems that these settings would work but might need to
|
||||||
|
# be restarted about once a week.
|
||||||
|
#
|
||||||
|
# Increasing the MaxPermSize seems to be important.
|
||||||
|
# The permGen includes things like classes and code. This is
|
||||||
|
# a problem since JSPs are classes and code so reloading a JSP
|
||||||
|
# adds to the permGen. The documentation weakly indicates that
|
||||||
|
# the permGen gets collected in full collections. I have not
|
||||||
|
# seen evidence that this it does when watching jconsole.
|
||||||
|
# Sun's JVM seperates the heap and classes but IBM and BEA do not.
|
||||||
|
#
|
||||||
|
# CATALINA_OPTS="-Xms1024m -Xmx1024m -XX:MaxPermSize=256m \
|
||||||
|
# -XX:+UseParallelGC \
|
||||||
|
# -Dfile.encoding=UTF-8 \
|
||||||
|
# -XX:+PrintGCDetails -XX:+PrintGCTimeStamps \
|
||||||
|
# -Xloggc:/usr/local/tomcat/logs/gc.txt "
|
||||||
|
|
||||||
|
#bdc 2005-10-18
|
||||||
|
# CATALINA_OPTS="-server -Xms512m -Xmx1024m \
|
||||||
|
# -XX:+UseParallelGC \
|
||||||
|
# -XX:ParallelGCThreads=8 -XX:-PrintTenuringDistribution \
|
||||||
|
# -XX:MaxPermSize=256 \
|
||||||
|
# -XX:NewRatio=5 -XX:GCTimeRatio=19 -XX:SurvivorRatio=32 \
|
||||||
|
# -Dfile.encoding=UTF-8 \
|
||||||
|
# -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:/usr/local/tomcat/log/gc.txt \
|
||||||
|
# -verbose:gc "
|
||||||
|
|
||||||
|
#These are the java command args needed to allow remote jmx
|
||||||
|
JMXREMOTE=" -Dcom.sun.management.jmxremote.port=8022 "
|
||||||
|
|
||||||
|
#we only what jmxremote when we start, not on stop since the
|
||||||
|
#port will be in use. This also could be done with jpda
|
||||||
|
START_OPTS="$JMXREMOTE"
|
||||||
|
|
||||||
|
# we want to allow access to files created by tomcat by the mannit group
|
||||||
|
umask 002
|
||||||
|
|
||||||
|
# this makes a link from the current gc log to a place were we can get it over http
|
||||||
|
# those '&& true' are just to force success so we don't exit
|
||||||
|
rm -f /usr/local/apache/htdocs/private/tmp/gc.txt && true
|
||||||
|
ln -f -s $GCFILE /usr/local/apache/htdocs/private/tmp/gc.txt && true
|
||||||
|
|
||||||
|
#We want a record of the JVM options to compare with the gc log.
|
||||||
|
echo "CATALINA_OPTS: $CATALINA_OPTS" > $OPT_FILE
|
||||||
|
echo "START_OPTS: $START_OPTS" >> $OPT_FILE
|
||||||
|
|
||||||
|
# We need to export any variables that are to be used outside of script:
|
||||||
|
export JAVA_HOME CATALINA_OPTS TOMCAT_HOME CATALINA_HOME
|
||||||
|
export START_OPTS
|
||||||
|
|
||||||
|
# displays a note about what parameters will be used:
|
||||||
|
#echo "Using CATALINA Opts from tomcat/bin/setenv.sh: "
|
||||||
|
#echo " $CATALINA_OPTS"
|
51
webapp/config/tlds/ListSparqlTag.tld
Normal file
51
webapp/config/tlds/ListSparqlTag.tld
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
<?xml version="1.0" encoding="ISO-8859-1" ?>
|
||||||
|
<!-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
|
||||||
|
<taglib
|
||||||
|
xmlns="http://java.sun.com/xml/ns/j2ee"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
|
||||||
|
version="2.0">
|
||||||
|
<description></description>
|
||||||
|
<display-name>List SPARQL JSP taglib</display-name>
|
||||||
|
<tlib-version>1.0</tlib-version>
|
||||||
|
<short-name>sparql</short-name>
|
||||||
|
<uri>http://mannlib.cornell.edu/vitro/ListSparqlTag/0.1/</uri>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>SPARQL select tag. (Must be nested inside sparql:sparql)</description>
|
||||||
|
<display-name>SPARQL select tag</display-name>
|
||||||
|
<name>select</name>
|
||||||
|
<tag-class>edu.cornell.mannlib.vitro.webapp.web.jsptags.ListSparqlTag</tag-class>
|
||||||
|
<body-content>tagdependent</body-content>
|
||||||
|
|
||||||
|
<variable>
|
||||||
|
<name-from-attribute>var</name-from-attribute>
|
||||||
|
<variable-class>java.util.List</variable-class>
|
||||||
|
<scope>AT_BEGIN</scope>
|
||||||
|
</variable>
|
||||||
|
|
||||||
|
<attribute>
|
||||||
|
<description></description>
|
||||||
|
<name>model</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>com.hp.hpl.jena.rdf.model.Model</type>
|
||||||
|
</attribute>
|
||||||
|
|
||||||
|
<attribute>
|
||||||
|
<description></description>
|
||||||
|
<name>var</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>java.lang.String</type>
|
||||||
|
</attribute>
|
||||||
|
|
||||||
|
<dynamic-attributes>true</dynamic-attributes>
|
||||||
|
|
||||||
|
<example>
|
||||||
|
|
||||||
|
</example>
|
||||||
|
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
</taglib>
|
43
webapp/config/tlds/PropertyEditLink.tld
Normal file
43
webapp/config/tlds/PropertyEditLink.tld
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||||
|
<!-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
|
||||||
|
<taglib
|
||||||
|
xmlns="http://java.sun.com/xml/ns/j2ee"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
|
||||||
|
version="2.0">
|
||||||
|
|
||||||
|
<display-name>Property Edit Link taglib</display-name>
|
||||||
|
<tlib-version>1.0</tlib-version>
|
||||||
|
|
||||||
|
<short-name>Vitro Property Edit Link generator</short-name>
|
||||||
|
<!--
|
||||||
|
This library has tags that make A elements for editing
|
||||||
|
ObjectPropertyStatement and DataPropertyStatements.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<name>editLinks</name>
|
||||||
|
<display-name>Edit Links for Propery</display-name>
|
||||||
|
<description>
|
||||||
|
Create the A elements for a specified Property.
|
||||||
|
</description>
|
||||||
|
<tag-class>edu.cornell.mannlib.vitro.webapp.web.jsptags.PropertyEditLinks</tag-class>
|
||||||
|
<body-content>empty</body-content>
|
||||||
|
<attribute>
|
||||||
|
<name>item</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>icons</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
</taglib>
|
28
webapp/config/tlds/StringProcessorTag.tld
Normal file
28
webapp/config/tlds/StringProcessorTag.tld
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||||
|
<!-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
|
||||||
|
<taglib
|
||||||
|
xmlns="http://java.sun.com/xml/ns/j2ee"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
|
||||||
|
version="2.0">
|
||||||
|
|
||||||
|
<tlib-version>1.0</tlib-version>
|
||||||
|
<uri>http://vitro.mannlib.cornell.edu/vitro/tags/StringProcessorTag</uri>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
This taglib is for processing the output using a UnaryFunctor<String,String>
|
||||||
|
found in the request scope.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<name>process</name>
|
||||||
|
<tag-class>edu.cornell.mannlib.vitro.webapp.web.jsptags.StringProcessorTag</tag-class>
|
||||||
|
<display-name>String Processor</display-name>
|
||||||
|
<description>
|
||||||
|
Processes output using "StringProcessor" from request.
|
||||||
|
</description>
|
||||||
|
|
||||||
|
<body-content>scriptless</body-content>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
</taglib>
|
565
webapp/config/tlds/c.tld
Normal file
565
webapp/config/tlds/c.tld
Normal file
|
@ -0,0 +1,565 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
|
||||||
|
<!-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
|
||||||
|
|
||||||
|
<taglib xmlns="http://java.sun.com/xml/ns/j2ee"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
|
||||||
|
version="2.0">
|
||||||
|
|
||||||
|
<description>JSTL 1.1 core library</description>
|
||||||
|
<display-name>JSTL core</display-name>
|
||||||
|
<tlib-version>1.1</tlib-version>
|
||||||
|
<short-name>c</short-name>
|
||||||
|
<uri>http://java.sun.com/jsp/jstl/core</uri>
|
||||||
|
|
||||||
|
<validator>
|
||||||
|
<description>
|
||||||
|
Provides core validation features for JSTL tags.
|
||||||
|
</description>
|
||||||
|
<validator-class>
|
||||||
|
org.apache.taglibs.standard.tlv.JstlCoreTLV
|
||||||
|
</validator-class>
|
||||||
|
</validator>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>
|
||||||
|
Catches any Throwable that occurs in its body and optionally
|
||||||
|
exposes it.
|
||||||
|
</description>
|
||||||
|
<name>catch</name>
|
||||||
|
<tag-class>org.apache.taglibs.standard.tag.common.core.CatchTag</tag-class>
|
||||||
|
<body-content>JSP</body-content>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Name of the exported scoped variable for the
|
||||||
|
exception thrown from a nested action. The type of the
|
||||||
|
scoped variable is the type of the exception thrown.
|
||||||
|
</description>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>
|
||||||
|
Simple conditional tag that establishes a context for
|
||||||
|
mutually exclusive conditional operations, marked by
|
||||||
|
<when> and <otherwise>
|
||||||
|
</description>
|
||||||
|
<name>choose</name>
|
||||||
|
<tag-class>org.apache.taglibs.standard.tag.common.core.ChooseTag</tag-class>
|
||||||
|
<body-content>JSP</body-content>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>
|
||||||
|
Simple conditional tag, which evalutes its body if the
|
||||||
|
supplied condition is true and optionally exposes a Boolean
|
||||||
|
scripting variable representing the evaluation of this condition
|
||||||
|
</description>
|
||||||
|
<name>if</name>
|
||||||
|
<tag-class>org.apache.taglibs.standard.tag.rt.core.IfTag</tag-class>
|
||||||
|
<body-content>JSP</body-content>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
The test condition that determines whether or
|
||||||
|
not the body content should be processed.
|
||||||
|
</description>
|
||||||
|
<name>test</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>boolean</type>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Name of the exported scoped variable for the
|
||||||
|
resulting value of the test condition. The type
|
||||||
|
of the scoped variable is Boolean.
|
||||||
|
</description>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Scope for var.
|
||||||
|
</description>
|
||||||
|
<name>scope</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>
|
||||||
|
Retrieves an absolute or relative URL and exposes its contents
|
||||||
|
to either the page, a String in 'var', or a Reader in 'varReader'.
|
||||||
|
</description>
|
||||||
|
<name>import</name>
|
||||||
|
<tag-class>org.apache.taglibs.standard.tag.rt.core.ImportTag</tag-class>
|
||||||
|
<tei-class>org.apache.taglibs.standard.tei.ImportTEI</tei-class>
|
||||||
|
<body-content>JSP</body-content>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
The URL of the resource to import.
|
||||||
|
</description>
|
||||||
|
<name>url</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Name of the exported scoped variable for the
|
||||||
|
resource's content. The type of the scoped
|
||||||
|
variable is String.
|
||||||
|
</description>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Scope for var.
|
||||||
|
</description>
|
||||||
|
<name>scope</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Name of the exported scoped variable for the
|
||||||
|
resource's content. The type of the scoped
|
||||||
|
variable is Reader.
|
||||||
|
</description>
|
||||||
|
<name>varReader</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Name of the context when accessing a relative
|
||||||
|
URL resource that belongs to a foreign
|
||||||
|
context.
|
||||||
|
</description>
|
||||||
|
<name>context</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Character encoding of the content at the input
|
||||||
|
resource.
|
||||||
|
</description>
|
||||||
|
<name>charEncoding</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>
|
||||||
|
The basic iteration tag, accepting many different
|
||||||
|
collection types and supporting subsetting and other
|
||||||
|
functionality
|
||||||
|
</description>
|
||||||
|
<name>forEach</name>
|
||||||
|
<tag-class>org.apache.taglibs.standard.tag.rt.core.ForEachTag</tag-class>
|
||||||
|
<tei-class>org.apache.taglibs.standard.tei.ForEachTEI</tei-class>
|
||||||
|
<body-content>JSP</body-content>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Collection of items to iterate over.
|
||||||
|
</description>
|
||||||
|
<name>items</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>java.lang.Object</type>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
If items specified:
|
||||||
|
Iteration begins at the item located at the
|
||||||
|
specified index. First item of the collection has
|
||||||
|
index 0.
|
||||||
|
If items not specified:
|
||||||
|
Iteration begins with index set at the value
|
||||||
|
specified.
|
||||||
|
</description>
|
||||||
|
<name>begin</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>int</type>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
If items specified:
|
||||||
|
Iteration ends at the item located at the
|
||||||
|
specified index (inclusive).
|
||||||
|
If items not specified:
|
||||||
|
Iteration ends when index reaches the value
|
||||||
|
specified.
|
||||||
|
</description>
|
||||||
|
<name>end</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>int</type>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Iteration will only process every step items of
|
||||||
|
the collection, starting with the first one.
|
||||||
|
</description>
|
||||||
|
<name>step</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>int</type>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Name of the exported scoped variable for the
|
||||||
|
current item of the iteration. This scoped
|
||||||
|
variable has nested visibility. Its type depends
|
||||||
|
on the object of the underlying collection.
|
||||||
|
</description>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Name of the exported scoped variable for the
|
||||||
|
status of the iteration. Object exported is of type
|
||||||
|
javax.servlet.jsp.jstl.core.LoopTagStatus. This scoped variable has nested
|
||||||
|
visibility.
|
||||||
|
</description>
|
||||||
|
<name>varStatus</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>
|
||||||
|
Iterates over tokens, separated by the supplied delimeters
|
||||||
|
</description>
|
||||||
|
<name>forTokens</name>
|
||||||
|
<tag-class>org.apache.taglibs.standard.tag.rt.core.ForTokensTag</tag-class>
|
||||||
|
<body-content>JSP</body-content>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
String of tokens to iterate over.
|
||||||
|
</description>
|
||||||
|
<name>items</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>java.lang.String</type>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
The set of delimiters (the characters that
|
||||||
|
separate the tokens in the string).
|
||||||
|
</description>
|
||||||
|
<name>delims</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>java.lang.String</type>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Iteration begins at the token located at the
|
||||||
|
specified index. First token has index 0.
|
||||||
|
</description>
|
||||||
|
<name>begin</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>int</type>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Iteration ends at the token located at the
|
||||||
|
specified index (inclusive).
|
||||||
|
</description>
|
||||||
|
<name>end</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>int</type>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Iteration will only process every step tokens
|
||||||
|
of the string, starting with the first one.
|
||||||
|
</description>
|
||||||
|
<name>step</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>int</type>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Name of the exported scoped variable for the
|
||||||
|
current item of the iteration. This scoped
|
||||||
|
variable has nested visibility.
|
||||||
|
</description>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Name of the exported scoped variable for the
|
||||||
|
status of the iteration. Object exported is of
|
||||||
|
type
|
||||||
|
javax.servlet.jsp.jstl.core.LoopTag
|
||||||
|
Status. This scoped variable has nested
|
||||||
|
visibility.
|
||||||
|
</description>
|
||||||
|
<name>varStatus</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>
|
||||||
|
Like <%= ... >, but for expressions.
|
||||||
|
</description>
|
||||||
|
<name>out</name>
|
||||||
|
<tag-class>org.apache.taglibs.standard.tag.rt.core.OutTag</tag-class>
|
||||||
|
<body-content>JSP</body-content>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Expression to be evaluated.
|
||||||
|
</description>
|
||||||
|
<name>value</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Default value if the resulting value is null.
|
||||||
|
</description>
|
||||||
|
<name>default</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Determines whether characters <,>,&,'," in the
|
||||||
|
resulting string should be converted to their
|
||||||
|
corresponding character entity codes. Default value is
|
||||||
|
true.
|
||||||
|
</description>
|
||||||
|
<name>escapeXml</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>
|
||||||
|
Subtag of <choose> that follows <when> tags
|
||||||
|
and runs only if all of the prior conditions evaluated to
|
||||||
|
'false'
|
||||||
|
</description>
|
||||||
|
<name>otherwise</name>
|
||||||
|
<tag-class>org.apache.taglibs.standard.tag.common.core.OtherwiseTag</tag-class>
|
||||||
|
<body-content>JSP</body-content>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>
|
||||||
|
Adds a parameter to a containing 'import' tag's URL.
|
||||||
|
</description>
|
||||||
|
<name>param</name>
|
||||||
|
<tag-class>org.apache.taglibs.standard.tag.rt.core.ParamTag</tag-class>
|
||||||
|
<body-content>JSP</body-content>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Name of the query string parameter.
|
||||||
|
</description>
|
||||||
|
<name>name</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Value of the parameter.
|
||||||
|
</description>
|
||||||
|
<name>value</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>
|
||||||
|
Redirects to a new URL.
|
||||||
|
</description>
|
||||||
|
<name>redirect</name>
|
||||||
|
<tag-class>org.apache.taglibs.standard.tag.rt.core.RedirectTag</tag-class>
|
||||||
|
<body-content>JSP</body-content>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
The URL of the resource to redirect to.
|
||||||
|
</description>
|
||||||
|
<name>url</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Name of the context when redirecting to a relative URL
|
||||||
|
resource that belongs to a foreign context.
|
||||||
|
</description>
|
||||||
|
<name>context</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>
|
||||||
|
Removes a scoped variable (from a particular scope, if specified).
|
||||||
|
</description>
|
||||||
|
<name>remove</name>
|
||||||
|
<tag-class>org.apache.taglibs.standard.tag.common.core.RemoveTag</tag-class>
|
||||||
|
<body-content>empty</body-content>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Name of the scoped variable to be removed.
|
||||||
|
</description>
|
||||||
|
<name>var</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Scope for var.
|
||||||
|
</description>
|
||||||
|
<name>scope</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>
|
||||||
|
Sets the result of an expression evaluation in a 'scope'
|
||||||
|
</description>
|
||||||
|
<name>set</name>
|
||||||
|
<tag-class>org.apache.taglibs.standard.tag.rt.core.SetTag</tag-class>
|
||||||
|
<body-content>JSP</body-content>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Name of the exported scoped variable to hold the value
|
||||||
|
specified in the action. The type of the scoped variable is
|
||||||
|
whatever type the value expression evaluates to.
|
||||||
|
</description>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Expression to be evaluated.
|
||||||
|
</description>
|
||||||
|
<name>value</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Target object whose property will be set. Must evaluate to
|
||||||
|
a JavaBeans object with setter property property, or to a
|
||||||
|
java.util.Map object.
|
||||||
|
</description>
|
||||||
|
<name>target</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Name of the property to be set in the target object.
|
||||||
|
</description>
|
||||||
|
<name>property</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Scope for var.
|
||||||
|
</description>
|
||||||
|
<name>scope</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>
|
||||||
|
Creates a URL with optional query parameters.
|
||||||
|
</description>
|
||||||
|
<name>url</name>
|
||||||
|
<tag-class>org.apache.taglibs.standard.tag.rt.core.UrlTag</tag-class>
|
||||||
|
<body-content>JSP</body-content>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Name of the exported scoped variable for the
|
||||||
|
processed url. The type of the scoped variable is
|
||||||
|
String.
|
||||||
|
</description>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Scope for var.
|
||||||
|
</description>
|
||||||
|
<name>scope</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
URL to be processed.
|
||||||
|
</description>
|
||||||
|
<name>value</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Name of the context when specifying a relative URL
|
||||||
|
resource that belongs to a foreign context.
|
||||||
|
</description>
|
||||||
|
<name>context</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>
|
||||||
|
Subtag of <choose> that includes its body if its
|
||||||
|
condition evalutes to 'true'
|
||||||
|
</description>
|
||||||
|
<name>when</name>
|
||||||
|
<tag-class>org.apache.taglibs.standard.tag.rt.core.WhenTag</tag-class>
|
||||||
|
<body-content>JSP</body-content>
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
The test condition that determines whether or not the
|
||||||
|
body content should be processed.
|
||||||
|
</description>
|
||||||
|
<name>test</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>boolean</type>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
</taglib>
|
185
webapp/config/tlds/database.tld
Normal file
185
webapp/config/tlds/database.tld
Normal file
|
@ -0,0 +1,185 @@
|
||||||
|
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||||
|
<!-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
|
||||||
|
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
|
||||||
|
"http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
|
||||||
|
<taglib>
|
||||||
|
<tlibversion>1.0</tlibversion>
|
||||||
|
<jspversion>1.1</jspversion>
|
||||||
|
<shortname>Sun Microsystems Press Tag library modified for Mann Library, Cornell</shortname>
|
||||||
|
<!--
|
||||||
|
<tag>
|
||||||
|
<name>show_table</name>
|
||||||
|
<tagclass>tags.jdbc.ShowTableTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>query</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>database</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>border</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>cellPadding</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>transaction</name>
|
||||||
|
<tagclass>tags.jdbc.TransactionTag</tagclass>
|
||||||
|
<bodycontent>tagdependent</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>file</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>prepareStatement</name>
|
||||||
|
<tagclass>tags.jdbc.PrepareStatementTag</tagclass>
|
||||||
|
<bodycontent>tagdependent</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>scope</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>id</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>executePreparedStatement</name>
|
||||||
|
<tagclass>tags.jdbc.ExecutePreparedStatementTag</tagclass>
|
||||||
|
<bodycontent>None</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>id</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>scope</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>variables</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
-->
|
||||||
|
<tag>
|
||||||
|
<name>query</name>
|
||||||
|
<tagclass>tags.jdbc.QueryTag</tagclass>
|
||||||
|
<!--bodycontent>tagdependent</bodycontent-->
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>id</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>scope</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>update</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>rows</name>
|
||||||
|
<tagclass>tags.jdbc.RowsTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>query</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>startRow</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>endRow</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>columnNames</name>
|
||||||
|
<tagclass>tags.jdbc.ColumnNamesTag</tagclass>
|
||||||
|
<teiclass>tags.jdbc.ColumnNamesTagInfo</teiclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>query</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>id</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>columns</name>
|
||||||
|
<tagclass>tags.jdbc.ColumnsTag</tagclass>
|
||||||
|
<teiclass>tags.jdbc.ColumnsTagInfo</teiclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>query</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>id</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>select_columns</name>
|
||||||
|
<tagclass>tags.jdbc.SelectColumnsTag</tagclass>
|
||||||
|
<teiclass>tags.jdbc.SelectColumnsTagInfo</teiclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>query</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>id</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>selectValue</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>release</name>
|
||||||
|
<tagclass>tags.jdbc.ReleaseTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>query</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
</taglib>
|
207
webapp/config/tlds/fn.tld
Normal file
207
webapp/config/tlds/fn.tld
Normal file
|
@ -0,0 +1,207 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<!-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
|
||||||
|
<taglib xmlns="http://java.sun.com/xml/ns/j2ee"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
|
||||||
|
version="2.0">
|
||||||
|
|
||||||
|
<description>JSTL 1.1 functions library</description>
|
||||||
|
<display-name>JSTL functions</display-name>
|
||||||
|
<tlib-version>1.1</tlib-version>
|
||||||
|
<short-name>fn</short-name>
|
||||||
|
<uri>http://java.sun.com/jsp/jstl/functions</uri>
|
||||||
|
|
||||||
|
<function>
|
||||||
|
<description>
|
||||||
|
Tests if an input string contains the specified substring.
|
||||||
|
</description>
|
||||||
|
<name>contains</name>
|
||||||
|
<function-class>org.apache.taglibs.standard.functions.Functions</function-class>
|
||||||
|
<function-signature>boolean contains(java.lang.String, java.lang.String)</function-signature>
|
||||||
|
<example>
|
||||||
|
<c:if test="${fn:contains(name, searchString)}">
|
||||||
|
</example>
|
||||||
|
</function>
|
||||||
|
|
||||||
|
<function>
|
||||||
|
<description>
|
||||||
|
Tests if an input string contains the specified substring in a case insensitive way.
|
||||||
|
</description>
|
||||||
|
<name>containsIgnoreCase</name>
|
||||||
|
<function-class>org.apache.taglibs.standard.functions.Functions</function-class>
|
||||||
|
<function-signature>boolean containsIgnoreCase(java.lang.String, java.lang.String)</function-signature>
|
||||||
|
<example>
|
||||||
|
<c:if test="${fn:containsIgnoreCase(name, searchString)}">
|
||||||
|
</example>
|
||||||
|
</function>
|
||||||
|
|
||||||
|
<function>
|
||||||
|
<description>
|
||||||
|
Tests if an input string ends with the specified suffix.
|
||||||
|
</description>
|
||||||
|
<name>endsWith</name>
|
||||||
|
<function-class>org.apache.taglibs.standard.functions.Functions</function-class>
|
||||||
|
<function-signature>boolean endsWith(java.lang.String, java.lang.String)</function-signature>
|
||||||
|
<example>
|
||||||
|
<c:if test="${fn:endsWith(filename, ".txt")}">
|
||||||
|
</example>
|
||||||
|
</function>
|
||||||
|
|
||||||
|
<function>
|
||||||
|
<description>
|
||||||
|
Escapes characters that could be interpreted as XML markup.
|
||||||
|
</description>
|
||||||
|
<name>escapeXml</name>
|
||||||
|
<function-class>org.apache.taglibs.standard.functions.Functions</function-class>
|
||||||
|
<function-signature>java.lang.String escapeXml(java.lang.String)</function-signature>
|
||||||
|
<example>
|
||||||
|
${fn:escapeXml(param:info)}
|
||||||
|
</example>
|
||||||
|
</function>
|
||||||
|
|
||||||
|
<function>
|
||||||
|
<description>
|
||||||
|
Returns the index withing a string of the first occurrence of a specified substring.
|
||||||
|
</description>
|
||||||
|
<name>indexOf</name>
|
||||||
|
<function-class>org.apache.taglibs.standard.functions.Functions</function-class>
|
||||||
|
<function-signature>int indexOf(java.lang.String, java.lang.String)</function-signature>
|
||||||
|
<example>
|
||||||
|
${fn:indexOf(name, "-")}
|
||||||
|
</example>
|
||||||
|
</function>
|
||||||
|
|
||||||
|
<function>
|
||||||
|
<description>
|
||||||
|
Joins all elements of an array into a string.
|
||||||
|
</description>
|
||||||
|
<name>join</name>
|
||||||
|
<function-class>org.apache.taglibs.standard.functions.Functions</function-class>
|
||||||
|
<function-signature>java.lang.String join(java.lang.String[], java.lang.String)</function-signature>
|
||||||
|
<example>
|
||||||
|
${fn:join(array, ";")}
|
||||||
|
</example>
|
||||||
|
</function>
|
||||||
|
|
||||||
|
<function>
|
||||||
|
<description>
|
||||||
|
Returns the number of items in a collection, or the number of characters in a string.
|
||||||
|
</description>
|
||||||
|
<name>length</name>
|
||||||
|
<function-class>org.apache.taglibs.standard.functions.Functions</function-class>
|
||||||
|
<function-signature>int length(java.lang.Object)</function-signature>
|
||||||
|
<example>
|
||||||
|
You have ${fn:length(shoppingCart.products)} in your shopping cart.
|
||||||
|
</example>
|
||||||
|
</function>
|
||||||
|
|
||||||
|
<function>
|
||||||
|
<description>
|
||||||
|
Returns a string resulting from replacing in an input string all occurrences
|
||||||
|
of a "before" string into an "after" substring.
|
||||||
|
</description>
|
||||||
|
<name>replace</name>
|
||||||
|
<function-class>org.apache.taglibs.standard.functions.Functions</function-class>
|
||||||
|
<function-signature>java.lang.String replace(java.lang.String, java.lang.String, java.lang.String)</function-signature>
|
||||||
|
<example>
|
||||||
|
${fn:replace(text, "-", "•")}
|
||||||
|
</example>
|
||||||
|
</function>
|
||||||
|
|
||||||
|
<function>
|
||||||
|
<description>
|
||||||
|
Splits a string into an array of substrings.
|
||||||
|
</description>
|
||||||
|
<name>split</name>
|
||||||
|
<function-class>org.apache.taglibs.standard.functions.Functions</function-class>
|
||||||
|
<function-signature>java.lang.String[] split(java.lang.String, java.lang.String)</function-signature>
|
||||||
|
<example>
|
||||||
|
${fn:split(customerNames, ";")}
|
||||||
|
</example>
|
||||||
|
</function>
|
||||||
|
|
||||||
|
<function>
|
||||||
|
<description>
|
||||||
|
Tests if an input string starts with the specified prefix.
|
||||||
|
</description>
|
||||||
|
<name>startsWith</name>
|
||||||
|
<function-class>org.apache.taglibs.standard.functions.Functions</function-class>
|
||||||
|
<function-signature>boolean startsWith(java.lang.String, java.lang.String)</function-signature>
|
||||||
|
<example>
|
||||||
|
<c:if test="${fn:startsWith(product.id, "100-")}">
|
||||||
|
</example>
|
||||||
|
</function>
|
||||||
|
|
||||||
|
<function>
|
||||||
|
<description>
|
||||||
|
Returns a subset of a string.
|
||||||
|
</description>
|
||||||
|
<name>substring</name>
|
||||||
|
<function-class>org.apache.taglibs.standard.functions.Functions</function-class>
|
||||||
|
<function-signature>java.lang.String substring(java.lang.String, int, int)</function-signature>
|
||||||
|
<example>
|
||||||
|
P.O. Box: ${fn:substring(zip, 6, -1)}
|
||||||
|
</example>
|
||||||
|
</function>
|
||||||
|
|
||||||
|
<function>
|
||||||
|
<description>
|
||||||
|
Returns a subset of a string following a specific substring.
|
||||||
|
</description>
|
||||||
|
<name>substringAfter</name>
|
||||||
|
<function-class>org.apache.taglibs.standard.functions.Functions</function-class>
|
||||||
|
<function-signature>java.lang.String substringAfter(java.lang.String, java.lang.String)</function-signature>
|
||||||
|
<example>
|
||||||
|
P.O. Box: ${fn:substringAfter(zip, "-")}
|
||||||
|
</example>
|
||||||
|
</function>
|
||||||
|
|
||||||
|
<function>
|
||||||
|
<description>
|
||||||
|
Returns a subset of a string before a specific substring.
|
||||||
|
</description>
|
||||||
|
<name>substringBefore</name>
|
||||||
|
<function-class>org.apache.taglibs.standard.functions.Functions</function-class>
|
||||||
|
<function-signature>java.lang.String substringBefore(java.lang.String, java.lang.String)</function-signature>
|
||||||
|
<example>
|
||||||
|
Zip (without P.O. Box): ${fn:substringBefore(zip, "-")}
|
||||||
|
</example>
|
||||||
|
</function>
|
||||||
|
|
||||||
|
<function>
|
||||||
|
<description>
|
||||||
|
Converts all of the characters of a string to lower case.
|
||||||
|
</description>
|
||||||
|
<name>toLowerCase</name>
|
||||||
|
<function-class>org.apache.taglibs.standard.functions.Functions</function-class>
|
||||||
|
<function-signature>java.lang.String toLowerCase(java.lang.String)</function-signature>
|
||||||
|
<example>
|
||||||
|
Product name: ${fn.toLowerCase(product.name)}
|
||||||
|
</example>
|
||||||
|
</function>
|
||||||
|
|
||||||
|
<function>
|
||||||
|
<description>
|
||||||
|
Converts all of the characters of a string to upper case.
|
||||||
|
</description>
|
||||||
|
<name>toUpperCase</name>
|
||||||
|
<function-class>org.apache.taglibs.standard.functions.Functions</function-class>
|
||||||
|
<function-signature>java.lang.String toUpperCase(java.lang.String)</function-signature>
|
||||||
|
<example>
|
||||||
|
Product name: ${fn.UpperCase(product.name)}
|
||||||
|
</example>
|
||||||
|
</function>
|
||||||
|
|
||||||
|
<function>
|
||||||
|
<description>
|
||||||
|
Removes white spaces from both ends of a string.
|
||||||
|
</description>
|
||||||
|
<name>trim</name>
|
||||||
|
<function-class>org.apache.taglibs.standard.functions.Functions</function-class>
|
||||||
|
<function-signature>java.lang.String trim(java.lang.String)</function-signature>
|
||||||
|
<example>
|
||||||
|
Name: ${fn.trim(name)}
|
||||||
|
</example>
|
||||||
|
</function>
|
||||||
|
|
||||||
|
</taglib>
|
66
webapp/config/tlds/form.tld
Normal file
66
webapp/config/tlds/form.tld
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||||
|
<!-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
|
||||||
|
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
|
||||||
|
"http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
|
||||||
|
<taglib>
|
||||||
|
<tlibversion>1.0</tlibversion>
|
||||||
|
<jspversion>1.1</jspversion>
|
||||||
|
<shortname>Vitro Editing Form Library</shortname>
|
||||||
|
<info>
|
||||||
|
This tag library contains tags for constructing vitro
|
||||||
|
editing forms. The tag names shadow html elements
|
||||||
|
but provide additional attributes for specifying
|
||||||
|
how dynamic content should be retrieved from persistent
|
||||||
|
storage.
|
||||||
|
</info>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<name>option</name>
|
||||||
|
<tagclass>edu.cornell.mannlib.vedit.tags.OptionTag</tagclass>
|
||||||
|
<bodycontent>empty</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>name</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<name>value</name>
|
||||||
|
<tagclass>edu.cornell.mannlib.vedit.tags.ValueTag</tagclass>
|
||||||
|
<bodycontent>empty</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>name</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<name>dynamicFields</name>
|
||||||
|
<tagclass>edu.cornell.mannlib.vedit.tags.DynamicFieldsTag</tagclass>
|
||||||
|
<bodycontent>empty</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>type</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>usePage</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<name>error</name>
|
||||||
|
<tagclass>edu.cornell.mannlib.vedit.tags.ErrorTag</tagclass>
|
||||||
|
<bodycontent>empty</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>name</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
</taglib>
|
280
webapp/config/tlds/sparqltag.tld
Normal file
280
webapp/config/tlds/sparqltag.tld
Normal file
|
@ -0,0 +1,280 @@
|
||||||
|
<?xml version="1.0" encoding="ISO-8859-1" ?>
|
||||||
|
|
||||||
|
<!-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
|
||||||
|
<!-- $Id: sparql.tld,v 1.2 2006/08/06 19:50:30 Dave Exp $ -->
|
||||||
|
|
||||||
|
<taglib xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd" version="2.0">
|
||||||
|
<description></description>
|
||||||
|
<display-name>SPARQL JSP taglib</display-name>
|
||||||
|
<tlib-version>1.0</tlib-version>
|
||||||
|
<short-name>sparql</short-name>
|
||||||
|
<uri>http://djpowell.net/tmp/sparql-tag/0.1/</uri>
|
||||||
|
|
||||||
|
<!-- <sparql:sparql> -->
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>
|
||||||
|
<![CDATA[
|
||||||
|
<p><b>SPARQL container tag.</b></p>
|
||||||
|
<p>This tag must be placed around sparql:select tags to
|
||||||
|
ensure that the live ResultSet's gets closed,
|
||||||
|
when this tag goes out of scope.
|
||||||
|
]]>
|
||||||
|
</description>
|
||||||
|
<display-name>SPARQL container tag</display-name>
|
||||||
|
<name>sparql</name>
|
||||||
|
<tag-class>net.djpowell.sparqltag.SparqlTag</tag-class>
|
||||||
|
<body-content>scriptless</body-content>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<!-- <sparql:lock> -->
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>
|
||||||
|
Obtains a lock or transaction on a model until the tag is closed.
|
||||||
|
</description>
|
||||||
|
<display-name>SPARQL lock tag</display-name>
|
||||||
|
<name>lock</name>
|
||||||
|
<tag-class>net.djpowell.sparqltag.LockTag</tag-class>
|
||||||
|
<tei-class>net.djpowell.sparqltag.LockTagInfo</tei-class>
|
||||||
|
<body-content>scriptless</body-content>
|
||||||
|
|
||||||
|
<attribute>
|
||||||
|
<description>The model to lock, or execute in a transaction</description>
|
||||||
|
<name>model</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>com.hp.hpl.jena.rdf.model.Model</type>
|
||||||
|
</attribute>
|
||||||
|
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
Indicates whether transactions should be used instead of
|
||||||
|
critical sections.
|
||||||
|
</description>
|
||||||
|
<name>transactions</name>
|
||||||
|
<!-- default is false -->
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>java.lang.String</type>
|
||||||
|
</attribute>
|
||||||
|
|
||||||
|
<attribute>
|
||||||
|
<description>
|
||||||
|
If critical sections are being used, indicates whether a
|
||||||
|
read lock is sufficient, or whether a write-lock is required.
|
||||||
|
The default is true, meaning a read-lock.
|
||||||
|
</description>
|
||||||
|
<name>readonly</name>
|
||||||
|
<!-- default is true-->
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>java.lang.String</type>
|
||||||
|
</attribute>
|
||||||
|
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<!-- <sparql:load> -->
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>SPARQL load tag. Convenience tag for creating a new model from an RDF/XML URI.</description>
|
||||||
|
<display-name>SPARQL load tag</display-name>
|
||||||
|
<name>load</name>
|
||||||
|
<tag-class>net.djpowell.sparqltag.LoadTag</tag-class>
|
||||||
|
<tei-class>net.djpowell.sparqltag.LoadTagInfo</tei-class>
|
||||||
|
<body-content>empty</body-content>
|
||||||
|
|
||||||
|
<variable>
|
||||||
|
<name-from-attribute>var</name-from-attribute>
|
||||||
|
<variable-class>com.hp.hpl.jena.rdf.model.Model</variable-class>
|
||||||
|
<scope>AT_END</scope>
|
||||||
|
</variable>
|
||||||
|
|
||||||
|
<attribute>
|
||||||
|
<description></description>
|
||||||
|
<name>var</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>java.lang.String</type>
|
||||||
|
</attribute>
|
||||||
|
|
||||||
|
<attribute>
|
||||||
|
<description></description>
|
||||||
|
<name>uri</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>java.lang.String</type>
|
||||||
|
</attribute>
|
||||||
|
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<!-- <sparql:ask> -->
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>SPARQL ask tag. (Must be nested inside sparql:sparql)</description>
|
||||||
|
<display-name>SPARQL ask tag</display-name>
|
||||||
|
<name>ask</name>
|
||||||
|
<tag-class>net.djpowell.sparqltag.AskTag</tag-class>
|
||||||
|
<body-content>tagdependent</body-content>
|
||||||
|
|
||||||
|
<variable>
|
||||||
|
<description></description>
|
||||||
|
<name-from-attribute>var</name-from-attribute>
|
||||||
|
<variable-class>java.lang.Boolean</variable-class>
|
||||||
|
<scope>AT_END</scope>
|
||||||
|
</variable>
|
||||||
|
|
||||||
|
<attribute>
|
||||||
|
<description></description>
|
||||||
|
<name>model</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>com.hp.hpl.jena.rdf.model.Model</type>
|
||||||
|
</attribute>
|
||||||
|
|
||||||
|
<attribute>
|
||||||
|
<description></description>
|
||||||
|
<name>var</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
<type>java.lang.String</type>
|
||||||
|
</attribute>
|
||||||
|
|
||||||
|
<dynamic-attributes>true</dynamic-attributes>
|
||||||
|
|
||||||
|
<example>
|
||||||
|
|
||||||
|
</example>
|
||||||
|
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- <sparql:construct> -->
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>SPARQL construct tag. (Must be nested inside sparql:sparql)</description>
|
||||||
|
<display-name>SPARQL construct tag</display-name>
|
||||||
|
<name>construct</name>
|
||||||
|
<tag-class>net.djpowell.sparqltag.ConstructTag</tag-class>
|
||||||
|
<body-content>tagdependent</body-content>
|
||||||
|
|
||||||
|
<variable>
|
||||||
|
<name-from-attribute>var</name-from-attribute>
|
||||||
|
<variable-class>com.hp.hpl.jena.rdf.model.Model</variable-class>
|
||||||
|
<scope>AT_END</scope>
|
||||||
|
</variable>
|
||||||
|
|
||||||
|
<attribute>
|
||||||
|
<description></description>
|
||||||
|
<name>model</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
<type>com.hp.hpl.jena.rdf.model.Model</type>
|
||||||
|
</attribute>
|
||||||
|
|
||||||
|
<attribute>
|
||||||
|
<description></description>
|
||||||
|
<name>var</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>java.lang.String</type>
|
||||||
|
</attribute>
|
||||||
|
|
||||||
|
<dynamic-attributes>true</dynamic-attributes>
|
||||||
|
|
||||||
|
<example>
|
||||||
|
|
||||||
|
</example>
|
||||||
|
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- <sparql:describe> -->
|
||||||
|
<tag>
|
||||||
|
<description>SPARQL describe tag. (Must be nested inside sparql:sparql)</description>
|
||||||
|
<display-name>SPARQL describe tag</display-name>
|
||||||
|
<name>describe</name>
|
||||||
|
<tag-class>net.djpowell.sparqltag.DescribeTag</tag-class>
|
||||||
|
<body-content>tagdependent</body-content>
|
||||||
|
|
||||||
|
<variable>
|
||||||
|
<name-from-attribute>var</name-from-attribute>
|
||||||
|
<variable-class>com.hp.hpl.jena.rdf.model.Model</variable-class>
|
||||||
|
<scope>AT_END</scope>
|
||||||
|
</variable>
|
||||||
|
|
||||||
|
<attribute>
|
||||||
|
<description></description>
|
||||||
|
<name>model</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>com.hp.hpl.jena.rdf.model.Model</type>
|
||||||
|
</attribute>
|
||||||
|
|
||||||
|
<attribute>
|
||||||
|
<description></description>
|
||||||
|
<name>var</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
<type>java.lang.String</type>
|
||||||
|
</attribute>
|
||||||
|
|
||||||
|
<dynamic-attributes>true</dynamic-attributes>
|
||||||
|
|
||||||
|
<example>
|
||||||
|
|
||||||
|
</example>
|
||||||
|
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- <sparql:select> -->
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<description>SPARQL select tag. (Must be nested inside sparql:sparql)</description>
|
||||||
|
<display-name>SPARQL select tag</display-name>
|
||||||
|
<name>select</name>
|
||||||
|
<tag-class>net.djpowell.sparqltag.SelectTag</tag-class>
|
||||||
|
<body-content>tagdependent</body-content>
|
||||||
|
|
||||||
|
<variable>
|
||||||
|
<name-from-attribute>var</name-from-attribute>
|
||||||
|
<variable-class>net.djpowell.sparqltag.SelectTag.RSWrapper</variable-class>
|
||||||
|
<!-- .rows = is an Iterator of QuerySolution -->
|
||||||
|
<scope>AT_END</scope>
|
||||||
|
</variable>
|
||||||
|
|
||||||
|
<attribute>
|
||||||
|
<description></description>
|
||||||
|
<name>model</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>com.hp.hpl.jena.rdf.model.Model</type>
|
||||||
|
</attribute>
|
||||||
|
|
||||||
|
<attribute>
|
||||||
|
<description></description>
|
||||||
|
<name>var</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
<type>java.lang.String</type>
|
||||||
|
</attribute>
|
||||||
|
|
||||||
|
<dynamic-attributes>true</dynamic-attributes>
|
||||||
|
|
||||||
|
<example>
|
||||||
|
|
||||||
|
</example>
|
||||||
|
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
</taglib>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Revision history
|
||||||
|
$Log: sparql.tld,v $
|
||||||
|
Revision 1.2 2006/08/06 19:50:30 Dave
|
||||||
|
Tidied up build
|
||||||
|
|
||||||
|
|
||||||
|
-->
|
256
webapp/config/tlds/taglibs-mailer.tld
Normal file
256
webapp/config/tlds/taglibs-mailer.tld
Normal file
|
@ -0,0 +1,256 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<!-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
|
||||||
|
|
||||||
|
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
|
||||||
|
<taglib>
|
||||||
|
<tlibversion>1.1</tlibversion>
|
||||||
|
<jspversion>1.1</jspversion>
|
||||||
|
<shortname>mailer</shortname>
|
||||||
|
<uri>http://jakarta.apache.org/taglibs/mailer-1.1</uri>
|
||||||
|
<info>This custom tag library is used to send e-mail.E-mail can be sent in three ways. The first way requires the name of the
|
||||||
|
SMTP host to use. The second requires the name of a JNDI Resource for a
|
||||||
|
JavaMail Session. The third requires the name of a JNDI Resource for a
|
||||||
|
JavaMail MimePartDataSource. Refer to your servlet container documentation
|
||||||
|
to determine which of these three methods you should use. During the
|
||||||
|
creation of an e-mail message, the addresses are checked for the correct
|
||||||
|
format. After the e-mail message has been created the send tag spawns a
|
||||||
|
thread to send the message in the background so that the user does not have
|
||||||
|
to wait for the SMTP host if it is busy.
|
||||||
|
|
||||||
|
<!-- Create a message by entering the name of the SMTP host. -->
|
||||||
|
<!-- The default for this attribute is localhost; for a host other -->
|
||||||
|
<!-- than localhost supply it's name with the server attribute -->
|
||||||
|
<!-- as in the example below. The body of the e-mail is supplied in the -->
|
||||||
|
<!-- message tag. The send tag is necessary to send the message. -->
|
||||||
|
<mt:mail server="home.net" to="foo@home.net"
|
||||||
|
from="bar@home.net" subject="mail taglib">
|
||||||
|
<mt:message>[body of message]</mt:message>
|
||||||
|
<mt:send/>
|
||||||
|
</mt:mail>
|
||||||
|
|
||||||
|
<!-- Using a JNDI named JavaMail Session object defined by the -->
|
||||||
|
<!-- session attribute. -->
|
||||||
|
<mt:mail session="java:/comp/env/session" to="foo@home.net"
|
||||||
|
from="bar@home.net" subject="mail taglib">
|
||||||
|
<mt:message>[body of message]</mt:message>
|
||||||
|
<mt:send/>
|
||||||
|
</mt:mail>
|
||||||
|
|
||||||
|
<!-- Or using a JNDI named JavaMail MimePartDataSource object -->
|
||||||
|
<!-- defined by mimeMessage attribute. -->
|
||||||
|
<mt:mail mimeMessage="java:/comp/env/message" to="foo@home.net"
|
||||||
|
from="bar@home.net" subject="mail taglib">
|
||||||
|
<mt:message>[body of message]</mt:message>
|
||||||
|
<mt:send/>
|
||||||
|
</mt:mail>
|
||||||
|
How e-mail is delivered depends on the JavaMail SMTP host settings. The
|
||||||
|
JavaMail SMTP host can be configured by your Servlet Container so that
|
||||||
|
bounced or undeliverable e-mails are returned to the sender by setting the
|
||||||
|
folowing properties.NameTypeDescriptionmail.smtp.dsn.notifyStringProperty determines if the user will be notified of undeliverable mail.
|
||||||
|
Either NEVER, or some combination of SUCCESS, FAILURE, and DELAY
|
||||||
|
(separated by commas).
|
||||||
|
mail.smtp.dsn.retStringDetermines what part of the undeliverable message will be returned in
|
||||||
|
the message to the sender. Either FULL or HDRS.
|
||||||
|
mail.smtp.sendpartialboolean
|
||||||
|
If set to true, and a message has some valid and some invalid addresses,
|
||||||
|
send the message anyway, reporting the partial failure with a
|
||||||
|
SendFailedException. If set to false (the default), the message is not
|
||||||
|
sent to any of the recipients if there is an invalid recipient address.
|
||||||
|
</info>
|
||||||
|
<tag>
|
||||||
|
<name>mail</name>
|
||||||
|
<tagclass>org.apache.taglibs.mailer.MailTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>server</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>yes</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>session</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>mimeMessage</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>authenticate</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>user</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>yes</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>password</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>yes</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>to</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>replyTo</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>from</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>cc</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>bcc</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>subject</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>server</name>
|
||||||
|
<tagclass>org.apache.taglibs.mailer.ServerTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>message</name>
|
||||||
|
<tagclass>org.apache.taglibs.mailer.MessageTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>type</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>header</name>
|
||||||
|
<tagclass>org.apache.taglibs.mailer.HeaderTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>name</name>
|
||||||
|
<required>yes</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>value</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>setrecipient</name>
|
||||||
|
<tagclass>org.apache.taglibs.mailer.SetRecipientTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>type</name>
|
||||||
|
<required>yes</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>address</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>addrecipient</name>
|
||||||
|
<tagclass>org.apache.taglibs.mailer.AddRecipientTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>type</name>
|
||||||
|
<required>yes</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>address</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>replyto</name>
|
||||||
|
<tagclass>org.apache.taglibs.mailer.ReplyToTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>from</name>
|
||||||
|
<tagclass>org.apache.taglibs.mailer.FromTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>attach</name>
|
||||||
|
<tagclass>org.apache.taglibs.mailer.AttachTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>file</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>url</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>type</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>subject</name>
|
||||||
|
<tagclass>org.apache.taglibs.mailer.SubjectTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>send</name>
|
||||||
|
<tagclass>org.apache.taglibs.mailer.SendTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>error</name>
|
||||||
|
<tagclass>org.apache.taglibs.mailer.ErrorTag</tagclass>
|
||||||
|
<teiclass>org.apache.taglibs.mailer.ErrorTEI</teiclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>id</name>
|
||||||
|
<required>yes</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
</taglib>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
90
webapp/config/tlds/taglibs-random.tld
Normal file
90
webapp/config/tlds/taglibs-random.tld
Normal file
|
@ -0,0 +1,90 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<!-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
|
||||||
|
|
||||||
|
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
|
||||||
|
<taglib>
|
||||||
|
<tlibversion>1.0.2</tlibversion>
|
||||||
|
<jspversion>1.1</jspversion>
|
||||||
|
<shortname>random</shortname>
|
||||||
|
<uri>http://jakarta.apache.org/taglibs/random-1.0</uri>
|
||||||
|
<info>
|
||||||
|
The Random tag library creates random strings and random numbers. You may
|
||||||
|
specify a set of allowable characters as well as the length for randomly
|
||||||
|
generated strings. You may specify a range of allowable integers or a
|
||||||
|
random floating point number between zero and one for randomly generated
|
||||||
|
numbers. </info>
|
||||||
|
<tag>
|
||||||
|
<name>string</name>
|
||||||
|
<tagclass>org.apache.taglibs.random.RandomStrgTag</tagclass>
|
||||||
|
<teiclass>org.apache.taglibs.random.RandomStrgTEI</teiclass>
|
||||||
|
<bodycontent>Empty</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>id</name>
|
||||||
|
<required>yes</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>length</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>map</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>charset</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>algorithm</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>provider</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>number</name>
|
||||||
|
<tagclass>org.apache.taglibs.random.RandomNumTag</tagclass>
|
||||||
|
<teiclass>org.apache.taglibs.random.RandomNumTEI</teiclass>
|
||||||
|
<bodycontent>Empty</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>id</name>
|
||||||
|
<required>yes</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>range</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>algorithm</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>provider</name>
|
||||||
|
<required>no</required>
|
||||||
|
<rtexprvalue>no</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
</taglib>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
745
webapp/config/tlds/taglibs-string.tld
Normal file
745
webapp/config/tlds/taglibs-string.tld
Normal file
|
@ -0,0 +1,745 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<!-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
|
||||||
|
|
||||||
|
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
|
||||||
|
<taglib>
|
||||||
|
<tlibversion>1.1.0</tlibversion>
|
||||||
|
<jspversion>1.1</jspversion>
|
||||||
|
<shortname>string</shortname>
|
||||||
|
<uri>http://jakarta.apache.org/taglibs/string-1.1</uri>
|
||||||
|
<info>
|
||||||
|
The String taglibrary provides a host of tags for manipulating
|
||||||
|
java.lang.Strings. The style is that the String to act upon is the
|
||||||
|
body of the tag, and attributes are used as parameters for the
|
||||||
|
manipulation.
|
||||||
|
</info>
|
||||||
|
<tag>
|
||||||
|
<name>length</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.LengthTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>capitalize</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.CapitalizeTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>uncapitalize</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.UncapitalizeTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>upperCase</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.UpperCaseTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>lowerCase</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.LowerCaseTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>trim</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.TrimTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>chop</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.ChopTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>chopNewline</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.ChopNewlineTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>escape</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.EscapeTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>reverse</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.ReverseTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>swapCase</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.SwapCaseTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>soundex</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.SoundexTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>metaphone</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.MetaphoneTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>quoteRegexp</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.QuoteRegexpTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>capitalizeAllWords</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.CapitalizeAllWordsTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>removeXml</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.RemoveXmlTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>encodeUrl</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.EncodeUrlTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>decodeUrl</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.DecodeUrlTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>count</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.CountTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>set</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>delete</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.DeleteTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>set</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>squeeze</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.SqueezeTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>set</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>center</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.CenterTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>delimiter</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>width</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>rightPad</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.RightPadTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>delimiter</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>width</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>leftPad</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.LeftPadTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>delimiter</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>width</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>chomp</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.ChompTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>delimiter</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>getChomp</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.GetChompTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>delimiter</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>prechomp</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.PrechompTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>delimiter</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>getPrechomp</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.GetPrechompTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>delimiter</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>strip</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.StripTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>delimiter</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>stripEnd</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.StripEndTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>delimiter</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>stripStart</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.StripStartTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>delimiter</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>reverseDelimitedString</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.ReverseDelimitedStringTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>delimiter</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>overlay</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.OverlayTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>with</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>start</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>end</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>substring</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.SubstringTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>start</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>end</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>repeat</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.RepeatTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>count</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>wordWrap</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.WordWrapTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>width</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>delimiter</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>split</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>delimiterInside</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>false</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>nestedString</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.NestedStringTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>open</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>close</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>countMatches</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.CountMatchesTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>substring</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>default</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.DefaultTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>value</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>default</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>replace</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.ReplaceTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>replace</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>with</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>count</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>newlineToken</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>carriageToken</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>randomString</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.RandomStringTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>count</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>start</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>end</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>type</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>left</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.LeftTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>count</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>right</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.RightTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>count</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>mid</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.MidTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>start</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>count</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>truncateNicely</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.TruncateNicelyTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>lower</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>upper</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>appendToEnd</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>join</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.JoinTag</tagclass>
|
||||||
|
<bodycontent>EMPTY</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>items</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>separator</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
<tag>
|
||||||
|
<name>split</name>
|
||||||
|
<tagclass>org.apache.taglibs.string.SplitTag</tagclass>
|
||||||
|
<bodycontent>JSP</bodycontent>
|
||||||
|
<attribute>
|
||||||
|
<name>separator</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
</taglib>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
198
webapp/config/tlds/vitroForm.tld
Normal file
198
webapp/config/tlds/vitroForm.tld
Normal file
|
@ -0,0 +1,198 @@
|
||||||
|
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||||
|
|
||||||
|
<!-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
|
||||||
|
|
||||||
|
<taglib xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd" version="2.0">
|
||||||
|
|
||||||
|
<description></description>
|
||||||
|
<display-name>SPARQL JSP taglib</display-name>
|
||||||
|
<tlib-version>1.0</tlib-version>
|
||||||
|
|
||||||
|
<short-name>Vitro DAO access Form Library</short-name>
|
||||||
|
<!--
|
||||||
|
This library has tags for extracting information from
|
||||||
|
the vitro dao and formating it into commonly used html
|
||||||
|
structures.
|
||||||
|
|
||||||
|
It is unrelated to the vedit form.tld
|
||||||
|
-->
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<name>optionsForProperty</name>
|
||||||
|
<display-name>Options For Property</display-name>
|
||||||
|
<description>
|
||||||
|
Create the option elements for a specified subject and predicate.
|
||||||
|
</description>
|
||||||
|
<tag-class>edu.cornell.mannlib.vitro.webapp.web.jsptags.OptionsForPropertyTag</tag-class>
|
||||||
|
<body-content>empty</body-content>
|
||||||
|
<attribute>
|
||||||
|
<name>subjectUri</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>predicateUri</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>selectedUri</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<name>optionsForVClass</name>
|
||||||
|
<display-name>Options For VClass</display-name>
|
||||||
|
<description>
|
||||||
|
Create the option elements for a specified vitro class.
|
||||||
|
</description>
|
||||||
|
<tag-class>edu.cornell.mannlib.vitro.webapp.web.jsptags.OptionsForClassTag</tag-class>
|
||||||
|
<body-content>empty</body-content>
|
||||||
|
<attribute>
|
||||||
|
<name>classUri</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>selectedUri</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<name>option</name>
|
||||||
|
<display-name>Options for Form Field</display-name>
|
||||||
|
<description>
|
||||||
|
Create the option elements for a specified field using information in the
|
||||||
|
editConfiguration to build the list and the editSubmission to mark one
|
||||||
|
of the options as selected.
|
||||||
|
</description>
|
||||||
|
<tag-class>edu.cornell.mannlib.vitro.webapp.web.jsptags.Options</tag-class>
|
||||||
|
<body-content>empty</body-content>
|
||||||
|
<attribute>
|
||||||
|
<name>name</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<name>jsonset</name>
|
||||||
|
<tag-class>edu.cornell.mannlib.vitro.webapp.web.jsptags.JsonSet</tag-class>
|
||||||
|
<body-content>scriptless</body-content>
|
||||||
|
<attribute>
|
||||||
|
<name>var</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<name>value</name>
|
||||||
|
<display-name>value for a Form Field</display-name>
|
||||||
|
<description>
|
||||||
|
If there is a value in a edit submission object that matches the name,
|
||||||
|
Then output that value. otherwise, output nothing
|
||||||
|
</description>
|
||||||
|
<tag-class>edu.cornell.mannlib.vitro.webapp.web.jsptags.Value</tag-class>
|
||||||
|
<body-content>empty</body-content>
|
||||||
|
<attribute>
|
||||||
|
<name>name</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<name>errorMessage</name>
|
||||||
|
<display-name>errorMessage value for a Form Field</display-name>
|
||||||
|
<description>
|
||||||
|
If there is a value in a edit submission.validation object that matches the name,
|
||||||
|
Then output that value. otherwise, output nothing
|
||||||
|
</description>
|
||||||
|
<tag-class>edu.cornell.mannlib.vitro.webapp.web.jsptags.ErrorMessage</tag-class>
|
||||||
|
<body-content>empty</body-content>
|
||||||
|
<attribute>
|
||||||
|
<name>name</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
<tag>
|
||||||
|
<name>input</name>
|
||||||
|
<display-name>Input Element Formatting</display-name>
|
||||||
|
<description>
|
||||||
|
Format a form input element of a specified element type
|
||||||
|
</description>
|
||||||
|
<tag-class>edu.cornell.mannlib.vitro.webapp.web.jsptags.InputElementFormattingTag</tag-class>
|
||||||
|
<body-content>empty</body-content>
|
||||||
|
<attribute>
|
||||||
|
<name>type</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>id</name>
|
||||||
|
<required>true</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>label</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>cssClass</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>value</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>error</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>size</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>rows</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>cols</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>multiple</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>listMarkup</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
<attribute>
|
||||||
|
<name>cancel</name>
|
||||||
|
<required>false</required>
|
||||||
|
<rtexprvalue>true</rtexprvalue>
|
||||||
|
</attribute>
|
||||||
|
</tag>
|
||||||
|
|
||||||
|
</taglib>
|
47
webapp/config/tomcat.server.log4j.properties.example
Normal file
47
webapp/config/tomcat.server.log4j.properties.example
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
# from tomcat documentation http://tomcat.apache.org/tomcat-5.5-doc/logging.html
|
||||||
|
# put commons-logging-1.1.jar, log4j-1.2.14.jar in tomcat/common/lib
|
||||||
|
# and this properties file in tomcat/common/classes
|
||||||
|
|
||||||
|
# This log4j configuration sets up a file called tomcat.log in your
|
||||||
|
# Tomcat logs folder with a maximum file size of 10MB and up to 10
|
||||||
|
# backups. DEBUG level is specified which will result in the most
|
||||||
|
# verbose output from Tomcat.
|
||||||
|
#
|
||||||
|
# You can (and should) be more picky about which packages to include in
|
||||||
|
# the logging. Tomcat 5.5 uses defines loggers by Engine and Host
|
||||||
|
# names. For example, for a default Catalina localhost log, add this to
|
||||||
|
# the end of the log4j.properties above. Note that there are known
|
||||||
|
# issues with using this naming convention (with square brackets) in
|
||||||
|
# log4j XML based configuration files, so we recommend you use a
|
||||||
|
# properties file as described until a future version of log4j allows
|
||||||
|
# this convention.
|
||||||
|
#
|
||||||
|
#* log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost]=DEBUG, R
|
||||||
|
#* log4j.logger.org.apache.catalina.core=DEBUG, R
|
||||||
|
#* log4j.logger.org.apache.catalina.session=DEBUG, R
|
||||||
|
#
|
||||||
|
# Be warned a level of DEBUG will produce megabytes of logging and slow
|
||||||
|
# startup of Tomcat. This level should be used sparingly when debugging
|
||||||
|
# of internal Tomcat operations is required.
|
||||||
|
#
|
||||||
|
# Your web applications should certainly use their own log4j
|
||||||
|
# configuration. This is valid with the above configuration. You would
|
||||||
|
# place a similar log4j.properties file in your web application's
|
||||||
|
# WEB-INF/classes folder, and log4j1.2.8.jar into WEB-INF/lib. Then
|
||||||
|
# specify your package level logging. This is a basic setup of log4j
|
||||||
|
# which does *not* require Commons-Logging, and you should consult the
|
||||||
|
# log4j documentation for more options.
|
||||||
|
|
||||||
|
log4j.rootLogger=INFO, R
|
||||||
|
log4j.appender.R=org.apache.log4j.RollingFileAppender
|
||||||
|
log4j.appender.R.File=${catalina.home}/logs/tomcat.server.log
|
||||||
|
log4j.appender.R.MaxFileSize=5MB
|
||||||
|
log4j.appender.R.MaxBackupIndex=3
|
||||||
|
log4j.appender.R.layout=org.apache.log4j.PatternLayout
|
||||||
|
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
|
||||||
|
log4j.logger.org.apache.catalina=INFO, R
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
1180
webapp/config/web.xml
Normal file
1180
webapp/config/web.xml
Normal file
File diff suppressed because it is too large
Load diff
15
webapp/lib/README.txt
Normal file
15
webapp/lib/README.txt
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
notes about jar files in lib dir:
|
||||||
|
|
||||||
|
commons-pool-1.2.jar - for connection pools and dbcp
|
||||||
|
commons-collections-3.1.jar - for commons-pool-1.2.jar
|
||||||
|
These previous two jars were not in the lib directory because
|
||||||
|
we had been putting them in tomcat/common/lib for the
|
||||||
|
server.xml database connection.
|
||||||
|
|
||||||
|
cos.jar
|
||||||
|
com.oreilly.servlet.* classes. Many different utilities for
|
||||||
|
servlets from http://servlets.com/cos/
|
||||||
|
There is a set of file upload tools, an email utility, a cache,
|
||||||
|
a base64 encode/decode, a parameter parser.
|
||||||
|
|
||||||
|
updated by bdc who need ServletUtils.
|
BIN
webapp/lib/XmlSchema-1.0.3.jar
Normal file
BIN
webapp/lib/XmlSchema-1.0.3.jar
Normal file
Binary file not shown.
BIN
webapp/lib/activation-1.1.jar
Normal file
BIN
webapp/lib/activation-1.1.jar
Normal file
Binary file not shown.
BIN
webapp/lib/aduna-appbase-core-3.4.jar
Normal file
BIN
webapp/lib/aduna-appbase-core-3.4.jar
Normal file
Binary file not shown.
BIN
webapp/lib/aduna-appbase-logging-api-3.4.jar
Normal file
BIN
webapp/lib/aduna-appbase-logging-api-3.4.jar
Normal file
Binary file not shown.
BIN
webapp/lib/aduna-appbase-logging-file-3.4.jar
Normal file
BIN
webapp/lib/aduna-appbase-logging-file-3.4.jar
Normal file
Binary file not shown.
BIN
webapp/lib/aduna-appbase-webapp-base-core-3.4.jar
Normal file
BIN
webapp/lib/aduna-appbase-webapp-base-core-3.4.jar
Normal file
Binary file not shown.
BIN
webapp/lib/aduna-commons-collections-2.3.jar
Normal file
BIN
webapp/lib/aduna-commons-collections-2.3.jar
Normal file
Binary file not shown.
BIN
webapp/lib/aduna-commons-concurrent-2.2.jar
Normal file
BIN
webapp/lib/aduna-commons-concurrent-2.2.jar
Normal file
Binary file not shown.
BIN
webapp/lib/aduna-commons-i18n-1.0.jar
Normal file
BIN
webapp/lib/aduna-commons-i18n-1.0.jar
Normal file
Binary file not shown.
BIN
webapp/lib/aduna-commons-io-2.4.jar
Normal file
BIN
webapp/lib/aduna-commons-io-2.4.jar
Normal file
Binary file not shown.
BIN
webapp/lib/aduna-commons-iteration-2.3.jar
Normal file
BIN
webapp/lib/aduna-commons-iteration-2.3.jar
Normal file
Binary file not shown.
BIN
webapp/lib/aduna-commons-lang-2.2.jar
Normal file
BIN
webapp/lib/aduna-commons-lang-2.2.jar
Normal file
Binary file not shown.
BIN
webapp/lib/aduna-commons-net-2.2.jar
Normal file
BIN
webapp/lib/aduna-commons-net-2.2.jar
Normal file
Binary file not shown.
BIN
webapp/lib/aduna-commons-platform-info-2.4.jar
Normal file
BIN
webapp/lib/aduna-commons-platform-info-2.4.jar
Normal file
Binary file not shown.
BIN
webapp/lib/aduna-commons-text-2.2.jar
Normal file
BIN
webapp/lib/aduna-commons-text-2.2.jar
Normal file
Binary file not shown.
BIN
webapp/lib/aduna-commons-webapp-core-2.3.jar
Normal file
BIN
webapp/lib/aduna-commons-webapp-core-2.3.jar
Normal file
Binary file not shown.
BIN
webapp/lib/aduna-commons-xml-2.2.jar
Normal file
BIN
webapp/lib/aduna-commons-xml-2.2.jar
Normal file
Binary file not shown.
BIN
webapp/lib/antlr-2.7.5.jar
Normal file
BIN
webapp/lib/antlr-2.7.5.jar
Normal file
Binary file not shown.
BIN
webapp/lib/arq-extra.jar
Normal file
BIN
webapp/lib/arq-extra.jar
Normal file
Binary file not shown.
BIN
webapp/lib/arq.jar
Normal file
BIN
webapp/lib/arq.jar
Normal file
Binary file not shown.
BIN
webapp/lib/aterm-java-1.6.jar
Normal file
BIN
webapp/lib/aterm-java-1.6.jar
Normal file
Binary file not shown.
BIN
webapp/lib/axis-ant.jar
Normal file
BIN
webapp/lib/axis-ant.jar
Normal file
Binary file not shown.
BIN
webapp/lib/axis.jar
Normal file
BIN
webapp/lib/axis.jar
Normal file
Binary file not shown.
BIN
webapp/lib/commons-beanutils-core.jar
Normal file
BIN
webapp/lib/commons-beanutils-core.jar
Normal file
Binary file not shown.
BIN
webapp/lib/commons-betwixt-0.7.jar
Normal file
BIN
webapp/lib/commons-betwixt-0.7.jar
Normal file
Binary file not shown.
BIN
webapp/lib/commons-cli-1.1.jar
Normal file
BIN
webapp/lib/commons-cli-1.1.jar
Normal file
Binary file not shown.
BIN
webapp/lib/commons-codec-1.3.jar
Normal file
BIN
webapp/lib/commons-codec-1.3.jar
Normal file
Binary file not shown.
BIN
webapp/lib/commons-collections-3.1.jar
Normal file
BIN
webapp/lib/commons-collections-3.1.jar
Normal file
Binary file not shown.
BIN
webapp/lib/commons-dbcp-1.2.1.jar
Normal file
BIN
webapp/lib/commons-dbcp-1.2.1.jar
Normal file
Binary file not shown.
BIN
webapp/lib/commons-dbcp-1.2.2.jar
Normal file
BIN
webapp/lib/commons-dbcp-1.2.2.jar
Normal file
Binary file not shown.
BIN
webapp/lib/commons-digester-1.7.jar
Normal file
BIN
webapp/lib/commons-digester-1.7.jar
Normal file
Binary file not shown.
BIN
webapp/lib/commons-discovery-0.2.jar
Normal file
BIN
webapp/lib/commons-discovery-0.2.jar
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue