jstrachan 02/05/20 03:09:28
Modified: jelly/src/java/org/apache/commons/jelly/tags/xml
ExprTag.java
jelly/src/java/org/apache/commons/jelly/tags/core
SetTag.java ForEachTag.java
Added: jelly/src/test/org/apache/commons/jelly/xml
testForEach.jelly example.jelly TestXMLTags.java
jelly/src/java/org/apache/commons/jelly
MissingAttributeException.java
jelly/src/java/org/apache/commons/jelly/tags/xml
XPathTagSupport.java IfTag.java
jelly/src/java/org/apache/commons/jelly/tags/core
NewTag.java
jelly/src/java/org/apache/commons/jelly/tags/ojb
BrokerTag.java StoreTag.java package.html
OjbTagLibrary.java
Log:
Fixed a number of bad line endings on source files. Also added a
MissingAttributeException to make it easier to report invalid use of tags. Finally
patched a few errors in the core and XML expression tags.
Revision Changes Path
1.1
jakarta-commons-sandbox/jelly/src/test/org/apache/commons/jelly/xml/testForEach.jelly
Index: testForEach.jelly
===================================================================
<?xml version="1.0"?>
<j:jelly xmlns:j="jelly:core" xmlns:x="jelly:xml">
<testcase>
<x:parse var="doc">
<a>
<b v="1"/>
<b v="2"/>
<b v="3"/>
</a>
</x:parse>
<j:set var="i" value="0"/>
<j:set var="i2" value="0"/>
<x:forEach
select="$doc/a/b" var="x">
<x:set var="i2" select="$i2 + number($x/@v)"/>
</x:forEach>
<x:forEach select="$doc/a">
<x:forEach select="b">
<x:set var="i" select="$i + @v"/>
</x:forEach>
</x:forEach>
<x:if
select="$i2 != 6.0">
<fail>The i2 should be 6! but the value is
<x:expr select="$i2"/></fail>
</x:if>
<x:if select="$i != 6.0">
<fail>The i should be 6! but the value is <x:expr select="$i"/></fail>
</x:if>
</testcase>
</j:jelly>
1.1
jakarta-commons-sandbox/jelly/src/test/org/apache/commons/jelly/xml/example.jelly
Index: example.jelly
===================================================================
<?xml version="1.0"?>
<j:jelly xmlns:j="jelly:core" xmlns:x="jelly:xml">
<x:parse var="doc">
<html>
<title>It works!</title>
<body>
</body>
</html>
</x:parse>
<x:expr select="$doc/html/title"/>
</j:jelly>
1.1
jakarta-commons-sandbox/jelly/src/test/org/apache/commons/jelly/xml/TestXMLTags.java
Index: TestXMLTags.java
===================================================================
/*
* $Header:
/home/cvs/jakarta-commons-sandbox/jelly/src/test/org/apache/commons/jelly/TestXMLTags.java,v
1.6 2002/05/15 07:47:50 jstrachan Exp $
* $Revision: 1.6 $
* $Date: 2002/05/15 07:47:50 $
*
* ====================================================================
*
* The Apache Software License, Version 1.1
*
* Copyright (c) 1999-2002 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. 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.
*
* 3. The end-user documentation included with the redistribution, if
* any, must include the following acknowlegement:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowlegement may appear in the software itself,
* if and wherever such third-party acknowlegements normally appear.
*
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
* Foundation" must not be used to endorse or promote products derived
* from this software without prior written permission. For written
* permission, please contact [EMAIL PROTECTED]
*
* 5. Products derived from this software may not be called "Apache"
* nor may "Apache" appear in their names without prior written
* permission of the Apache Group.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED 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 APACHE SOFTWARE FOUNDATION OR
* ITS 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.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
* $Id: TestXMLTags.java,v 1.6 2002/05/15 07:47:50 jstrachan Exp $
*/
package org.apache.commons.jelly.xml;
import java.io.InputStream;
import java.io.IOException;
import java.io.StringWriter;
import java.util.Iterator;
import java.util.List;
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
import junit.textui.TestRunner;
import org.apache.commons.jelly.JellyContext;
import org.apache.commons.jelly.Script;
import org.apache.commons.jelly.XMLOutput;
import org.apache.commons.jelly.impl.TagScript;
import org.apache.commons.jelly.parser.XMLParser;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Node;
/** Tests the parser, the engine and the XML tags
*
* @author <a href="mailto:[EMAIL PROTECTED]">James Strachan</a>
* @version $Revision: 1.6 $
*/
public class TestXMLTags extends TestCase {
/** The Log to which logging calls will be made. */
private static final Log log = LogFactory.getLog(TestXMLTags.class);
public static void main(String[] args) {
TestRunner.run(suite());
}
public static Test suite() {
return new TestSuite(TestXMLTags.class);
}
public TestXMLTags(String testName) {
super(testName);
}
public void testUnitTests() throws Exception {
runUnitTest( "testForEach.jelly" );
}
public void testParse() throws Exception {
InputStream in = getClass().getResourceAsStream("example.jelly");
XMLParser parser = new XMLParser();
Script script = parser.parse(in);
script = script.compile();
log.debug("Found: " + script);
assertTrue("Script is a TagScript", script instanceof TagScript);
StringWriter buffer = new StringWriter();
script.run(parser.getContext(), XMLOutput.createXMLOutput(buffer));
String text = buffer.toString().trim();
if (log.isDebugEnabled()) {
log.debug("Evaluated script as...");
log.debug(text);
}
assertEquals("Produces the correct output", "It works!", text);
}
public void runUnitTest(String name) throws Exception {
// parse script
InputStream in = getClass().getResourceAsStream(name);
XMLParser parser = new XMLParser();
Script script = parser.parse(in);
script = script.compile();
assertTrue("Script is a TagScript", script instanceof TagScript);
StringWriter buffer = new StringWriter();
script.run(parser.getContext(), XMLOutput.createXMLOutput(buffer));
String text = buffer.toString().trim();
if (log.isDebugEnabled()) {
log.debug("Evaluated script as...");
log.debug(text);
}
// now lets parse the output
Document document = DocumentHelper.parseText( text );
List failures = document.selectNodes( "/*/fail" );
for ( Iterator iter = failures.iterator(); iter.hasNext(); ) {
Node node = (Node) iter.next();
fail( node.getStringValue() );
}
}
}
1.1
jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/MissingAttributeException.java
Index: MissingAttributeException.java
===================================================================
/*
* $Header:
/home/cvs/jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/JellyException.java,v
1.2 2002/05/15 06:25:47 jstrachan Exp $
* $Revision: 1.2 $
* $Date: 2002/05/15 06:25:47 $
*
* ====================================================================
*
* The Apache Software License, Version 1.1
*
* Copyright (c) 1999-2002 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. 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.
*
* 3. The end-user documentation included with the redistribution, if
* any, must include the following acknowlegement:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowlegement may appear in the software itself,
* if and wherever such third-party acknowlegements normally appear.
*
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
* Foundation" must not be used to endorse or promote products derived
* from this software without prior written permission. For written
* permission, please contact [EMAIL PROTECTED]
*
* 5. Products derived from this software may not be called "Apache"
* nor may "Apache" appear in their names without prior written
* permission of the Apache Group.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED 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 APACHE SOFTWARE FOUNDATION OR
* ITS 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.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
* $Id: JellyException.java,v 1.2 2002/05/15 06:25:47 jstrachan Exp $
*/
package org.apache.commons.jelly;
/**
* <p><code>JellyException</code> is the root of all Jelly exceptions.</p>
*
* @author <a href="mailto:[EMAIL PROTECTED]">James Strachan</a>
* @version $Revision: 1.2 $
*/
public class MissingAttributeException extends JellyException {
private String missingAttribute;
// ### we may wish to implement a localized messag for this error
public MissingAttributeException(String missingAttribute) {
super( "You must define an attribute called '" + missingAttribute + "' for
this tag." );
this.missingAttribute = missingAttribute;
}
public String getMissingAttribute() {
return missingAttribute;
}
}
1.8 +5 -16
jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/xml/ExprTag.java
Index: ExprTag.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/xml/ExprTag.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- ExprTag.java 17 May 2002 15:18:13 -0000 1.7
+++ ExprTag.java 20 May 2002 10:09:28 -0000 1.8
@@ -1,7 +1,7 @@
/*
- * $Header:
/home/cvs/jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/xml/ExprTag.java,v
1.7 2002/05/17 15:18:13 jstrachan Exp $
- * $Revision: 1.7 $
- * $Date: 2002/05/17 15:18:13 $
+ * $Header:
/home/cvs/jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/xml/ExprTag.java,v
1.8 2002/05/20 10:09:28 jstrachan Exp $
+ * $Revision: 1.8 $
+ * $Date: 2002/05/20 10:09:28 $
*
* ====================================================================
*
@@ -57,7 +57,7 @@
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
- * $Id: ExprTag.java,v 1.7 2002/05/17 15:18:13 jstrachan Exp $
+ * $Id: ExprTag.java,v 1.8 2002/05/20 10:09:28 jstrachan Exp $
*/
package org.apache.commons.jelly.tags.xml;
@@ -73,7 +73,7 @@
* in XSLT
*
* @author <a href="mailto:[EMAIL PROTECTED]">James Strachan</a>
- * @version $Revision: 1.7 $
+ * @version $Revision: 1.8 $
*/
public class ExprTag extends XPathTagSupport {
@@ -104,15 +104,4 @@
public void setSelect(XPath select) {
this.select = select;
}
-
- // Implementation methods
- //-------------------------------------------------------------------------
- protected Object getXPathContext() {
- ForEachTag tag = (ForEachTag) findAncestorWithClass( ForEachTag.class );
- if ( tag != null ) {
- return tag.getXPathContext();
- }
- return null;
- }
-
}
1.1
jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/xml/XPathTagSupport.java
Index: XPathTagSupport.java
===================================================================
/*
* $Header:
/home/cvs/jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/xml/ExprTag.java,v
1.5 2002/05/16 16:29:55 jstrachan Exp $
* $Revision: 1.5 $
* $Date: 2002/05/16 16:29:55 $
*
* ====================================================================
*
* The Apache Software License, Version 1.1
*
* Copyright (c) 1999-2002 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. 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.
*
* 3. The end-user documentation included with the redistribution, if
* any, must include the following acknowlegement:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowlegement may appear in the software itself,
* if and wherever such third-party acknowlegements normally appear.
*
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
* Foundation" must not be used to endorse or promote products derived
* from this software without prior written permission. For written
* permission, please contact [EMAIL PROTECTED]
*
* 5. Products derived from this software may not be called "Apache"
* nor may "Apache" appear in their names without prior written
* permission of the Apache Group.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED 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 APACHE SOFTWARE FOUNDATION OR
* ITS 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.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
* $Id: ExprTag.java,v 1.5 2002/05/16 16:29:55 jstrachan Exp $
*/
package org.apache.commons.jelly.tags.xml;
import org.apache.commons.jelly.JellyContext;
import org.apache.commons.jelly.Script;
import org.apache.commons.jelly.TagSupport;
import org.apache.commons.jelly.XMLOutput;
/** An abstract base class useful for implementation inheritence
*
* @author <a href="mailto:[EMAIL PROTECTED]">James Strachan</a>
* @version $Revision: 1.5 $
*/
public abstract class XPathTagSupport extends TagSupport {
// Implementation methods
//-------------------------------------------------------------------------
protected Object getXPathContext() {
ForEachTag tag = (ForEachTag) findAncestorWithClass( ForEachTag.class );
if ( tag != null ) {
return tag.getIterationValue();
}
return null;
}
}
1.1
jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/xml/IfTag.java
Index: IfTag.java
===================================================================
/*
* $Header:
/home/cvs/jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/xml/ExprTag.java,v
1.6 2002/05/16 18:20:35 jstrachan Exp $
* $Revision: 1.6 $
* $Date: 2002/05/16 18:20:35 $
*
* ====================================================================
*
* The Apache Software License, Version 1.1
*
* Copyright (c) 1999-2002 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. 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.
*
* 3. The end-user documentation included with the redistribution, if
* any, must include the following acknowlegement:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowlegement may appear in the software itself,
* if and wherever such third-party acknowlegements normally appear.
*
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
* Foundation" must not be used to endorse or promote products derived
* from this software without prior written permission. For written
* permission, please contact [EMAIL PROTECTED]
*
* 5. Products derived from this software may not be called "Apache"
* nor may "Apache" appear in their names without prior written
* permission of the Apache Group.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED 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 APACHE SOFTWARE FOUNDATION OR
* ITS 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.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
* $Id: ExprTag.java,v 1.6 2002/05/16 18:20:35 jstrachan Exp $
*/
package org.apache.commons.jelly.tags.xml;
import org.apache.commons.jelly.JellyContext;
import org.apache.commons.jelly.MissingAttributeException;
import org.apache.commons.jelly.Script;
import org.apache.commons.jelly.TagSupport;
import org.apache.commons.jelly.XMLOutput;
import org.jaxen.XPath;
/**
* Evaluates the XPath expression to be a boolean and only evaluates the body
* if the expression is true.
* @author <a href="mailto:[EMAIL PROTECTED]">James Strachan</a>
* @version $Revision: 1.6 $
*/
public class IfTag extends XPathTagSupport {
/** The XPath expression to evaluate. */
private XPath select;
public IfTag() {
}
// Tag interface
//-------------------------------------------------------------------------
public void doTag(XMLOutput output) throws Exception {
if (select == null) {
throw new MissingAttributeException( "select" );
}
Object xpathContext = getXPathContext();
if ( select.booleanValueOf(xpathContext) ) {
getBody().run( context, output );
}
}
// Properties
//-------------------------------------------------------------------------
/** Sets the XPath expression to evaluate. */
public void setSelect(XPath select) {
this.select = select;
}
// Implementation methods
//-------------------------------------------------------------------------
protected Object getXPathContext() {
ForEachTag tag = (ForEachTag) findAncestorWithClass( ForEachTag.class );
if ( tag != null ) {
return tag.getXPathContext();
}
return null;
}
}
1.6 +23 -11
jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/core/SetTag.java
Index: SetTag.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/core/SetTag.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- SetTag.java 17 May 2002 15:18:08 -0000 1.5
+++ SetTag.java 20 May 2002 10:09:28 -0000 1.6
@@ -1,7 +1,7 @@
/*
- * $Header:
/home/cvs/jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/core/SetTag.java,v
1.5 2002/05/17 15:18:08 jstrachan Exp $
- * $Revision: 1.5 $
- * $Date: 2002/05/17 15:18:08 $
+ * $Header:
/home/cvs/jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/core/SetTag.java,v
1.6 2002/05/20 10:09:28 jstrachan Exp $
+ * $Revision: 1.6 $
+ * $Date: 2002/05/20 10:09:28 $
*
* ====================================================================
*
@@ -57,7 +57,7 @@
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
- * $Id: SetTag.java,v 1.5 2002/05/17 15:18:08 jstrachan Exp $
+ * $Id: SetTag.java,v 1.6 2002/05/20 10:09:28 jstrachan Exp $
*/
package org.apache.commons.jelly.tags.core;
@@ -74,13 +74,20 @@
import org.apache.commons.jelly.XMLOutput;
import org.apache.commons.jelly.expression.Expression;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+
/** A tag which sets a variable from the result of an expression
*
* @author <a href="mailto:[EMAIL PROTECTED]">James Strachan</a>
- * @version $Revision: 1.5 $
+ * @version $Revision: 1.6 $
*/
public class SetTag extends TagSupport {
+ /** The Log to which logging calls will be made. */
+ private static final Log log = LogFactory.getLog(SetTag.class);
+
/** The variable name to export. */
private String var;
@@ -117,7 +124,7 @@
if ( property == null ) {
throw new JellyException( "You must define a 'property' attribute
if you specify a 'target'" );
}
- setPropertyValue( target, property, value );
+ setPropertyValue( target, property, answer );
}
}
@@ -147,12 +154,17 @@
// Implementation methods
//-------------------------------------------------------------------------
protected void setPropertyValue( Object target, String property, Object value )
throws Exception {
- if ( target instanceof Map ) {
- Map map = (Map) target;
- map.put( property, value );
+ try {
+ if ( target instanceof Map ) {
+ Map map = (Map) target;
+ map.put( property, value );
+ }
+ else {
+ BeanUtils.setProperty( target, property, value );
+ }
}
- else {
- BeanUtils.setProperty( target, property, value );
+ catch (Exception e) {
+ log.error( "Failed to set the property: " + property + " on bean: " +
target + " to value: " + value + " due to exception: " + e, e );
}
}
1.8 +6 -61
jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/core/ForEachTag.java
Index: ForEachTag.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/core/ForEachTag.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- ForEachTag.java 17 May 2002 15:18:08 -0000 1.7
+++ ForEachTag.java 20 May 2002 10:09:28 -0000 1.8
@@ -1,7 +1,7 @@
/*
- * $Header:
/home/cvs/jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/core/ForEachTag.java,v
1.7 2002/05/17 15:18:08 jstrachan Exp $
- * $Revision: 1.7 $
- * $Date: 2002/05/17 15:18:08 $
+ * $Header:
/home/cvs/jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/core/ForEachTag.java,v
1.8 2002/05/20 10:09:28 jstrachan Exp $
+ * $Revision: 1.8 $
+ * $Date: 2002/05/20 10:09:28 $
*
* ====================================================================
*
@@ -57,185 +57,130 @@
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
- * $Id: ForEachTag.java,v 1.7 2002/05/17 15:18:08 jstrachan Exp $
+ * $Id: ForEachTag.java,v 1.8 2002/05/20 10:09:28 jstrachan Exp $
*/
package org.apache.commons.jelly.tags.core;
import java.io.IOException;
-
import java.io.Writer;
-
import java.util.Iterator;
-
import java.util.List;
import org.apache.commons.jelly.JellyContext;
-
import org.apache.commons.jelly.Script;
-
import org.apache.commons.jelly.TagSupport;
-
import org.apache.commons.jelly.XMLOutput;
-
import org.apache.commons.jelly.expression.Expression;
import org.apache.commons.logging.Log;
-
import org.apache.commons.logging.LogFactory;
/** A tag which performs an iteration over the results of an XPath expression
*
* @author <a href="mailto:[EMAIL PROTECTED]">James Strachan</a>
- * @version $Revision: 1.7 $
+ * @version $Revision: 1.8 $
*/
-
public class ForEachTag extends TagSupport {
/** The Log to which logging calls will be made. */
-
private static final Log log = LogFactory.getLog(ForEachTag.class);
/** Holds the variable name to export for the item being iterated over. */
-
private Expression items;
/**
* If specified then the current item iterated through will be defined
* as the given variable name.
*/
-
private String var;
/**
* If specified then the current index counter will be defined
* as the given variable name.
*/
-
private String indexVar;
/** The starting index value */
-
private int begin;
/** The ending index value */
-
private int end = Integer.MAX_VALUE;
/** The index increment step */
-
private int step = 1;
/** The iteration index */
-
private int index;
public ForEachTag() {
-
}
// Tag interface
//-------------------------------------------------------------------------
-
public void doTag(XMLOutput output) throws Exception {
if (log.isDebugEnabled()) {
-
log.debug("running with items: " + items);
-
}
if (items != null) {
-
Iterator iter = items.evaluateAsIterator(context);
-
if (log.isDebugEnabled()) {
-
log.debug("Iterating through: " + iter);
-
}
for (index = begin; iter.hasNext() && index < end; index += step) {
-
Object value = iter.next();
-
if (var != null) {
-
context.setVariable(var, value);
-
}
-
if (indexVar != null) {
-
context.setVariable(indexVar, new Integer(index));
-
}
-
getBody().run(context, output);
-
}
-
}
-
}
// Properties
-
//-------------------------------------------------------------------------
/** Sets the expression used to iterate over
*/
-
public void setItems(Expression items) {
-
this.items = items;
-
}
/** Sets the variable name to export for the item being iterated over
*/
-
public void setVar(String var) {
-
this.var = var;
-
}
/** Sets the variable name to export the current index counter to
*/
-
public void setIndexVar(String indexVar) {
-
this.indexVar = indexVar;
-
}
/** Sets the starting index value
*/
-
public void setBegin(int begin) {
-
this.begin = begin;
-
}
/** Sets the ending index value
*/
-
public void setEnd(int end) {
-
this.end = end;
-
}
/** Sets the index increment step
*/
-
public void setStep(int step) {
-
this.step = step;
-
}
-}
+}
\ No newline at end of file
1.1
jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/core/NewTag.java
Index: NewTag.java
===================================================================
/*
* $Header:
/home/cvs/jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/core/ChooseTag.java,v
1.3 2002/05/15 06:25:46 jstrachan Exp $
* $Revision: 1.3 $
* $Date: 2002/05/15 06:25:46 $
*
* ====================================================================
*
* The Apache Software License, Version 1.1
*
* Copyright (c) 1999-2002 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. 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.
*
* 3. The end-user documentation included with the redistribution, if
* any, must include the following acknowlegement:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowlegement may appear in the software itself,
* if and wherever such third-party acknowlegements normally appear.
*
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
* Foundation" must not be used to endorse or promote products derived
* from this software without prior written permission. For written
* permission, please contact [EMAIL PROTECTED]
*
* 5. Products derived from this software may not be called "Apache"
* nor may "Apache" appear in their names without prior written
* permission of the Apache Group.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED 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 APACHE SOFTWARE FOUNDATION OR
* ITS 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.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
* $Id: ChooseTag.java,v 1.3 2002/05/15 06:25:46 jstrachan Exp $
*/
package org.apache.commons.jelly.tags.core;
import org.apache.commons.jelly.JellyContext;
import org.apache.commons.jelly.MissingAttributeException;
import org.apache.commons.jelly.TagSupport;
import org.apache.commons.jelly.XMLOutput;
/** A tag which creates a new object of the given type
*
* @author <a href="mailto:[EMAIL PROTECTED]">James Strachan</a>
* @version $Revision: 1.3 $
*/
public class NewTag extends TagSupport {
/** the variable exported */
private String var;
/** the class name of the object to instantiate */
private String className;
/**
* The class loader to use for instantiating application objects.
* If not specified, the context class loader, or the class loader
* used to load XMLParser itself, is used, based on the value of the
* <code>useContextClassLoader</code> variable.
*/
protected ClassLoader classLoader = null;
/**
* Do we want to use the Context ClassLoader when loading classes
* for instantiating new objects? Default is <code>false</code>.
*/
protected boolean useContextClassLoader = false;
public NewTag() {
}
/** Sets the name of the variable exported by this tag */
public void setVar(String var) {
this.var = var;
}
/** Sets the class name of the object to instantiate */
public void setClassName(String className) {
this.className = className;
}
/**
* Return the class loader to be used for instantiating application objects
* when required. This is determined based upon the following rules:
* <ul>
* <li>The class loader set by <code>setClassLoader()</code>, if any</li>
* <li>The thread context class loader, if it exists and the
* <code>useContextClassLoader</code> property is set to true</li>
* <li>The class loader used to load the XMLParser class itself.
* </ul>
*/
public ClassLoader getClassLoader() {
if (this.classLoader != null) {
return (this.classLoader);
}
if (this.useContextClassLoader) {
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
if (classLoader != null) {
return (classLoader);
}
}
return (this.getClass().getClassLoader());
}
/**
* Set the class loader to be used for instantiating application objects
* when required.
*
* @param classLoader The new class loader to use, or <code>null</code>
* to revert to the standard rules
*/
public void setClassLoader(ClassLoader classLoader) {
this.classLoader = classLoader;
}
/**
* Return the boolean as to whether the context classloader should be used.
*/
public boolean getUseContextClassLoader() {
return useContextClassLoader;
}
/**
* Determine whether to use the Context ClassLoader (the one found by
* calling <code>Thread.currentThread().getContextClassLoader()</code>)
* to resolve/load classes. If not
* using Context ClassLoader, then the class-loading defaults to
* using the calling-class' ClassLoader.
*
* @param boolean determines whether to use JellyContext ClassLoader.
*/
public void setUseContextClassLoader(boolean use) {
useContextClassLoader = use;
}
// Tag interface
//-------------------------------------------------------------------------
public void doTag(XMLOutput output) throws Exception {
if ( var == null ) {
throw new MissingAttributeException( "var" );
}
if ( className == null ) {
throw new MissingAttributeException( "className" );
}
Class theClass = getClassLoader().loadClass( className );
Object object = theClass.newInstance();
context.setVariable(var, object);
}
}
1.1
jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/ojb/BrokerTag.java
Index: BrokerTag.java
===================================================================
/*
* The Apache Software License, Version 1.1
*
* Copyright (c) 1999 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. 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.
*
* 3. The end-user documentation included with the redistribution, if
* any, must include the following acknowlegement:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowlegement may appear in the software itself,
* if and wherever such third-party acknowlegements normally appear.
*
* 4. The names "The Jakarta Project", "Tomcat", and "Apache Software
* Foundation" must not be used to endorse or promote products derived
* from this software without prior written permission. For written
* permission, please contact [EMAIL PROTECTED]
*
* 5. Products derived from this software may not be called "Apache"
* nor may "Apache" appear in their names without prior written
* permission of the Apache Group.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED 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 APACHE SOFTWARE FOUNDATION OR
* ITS 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.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
*/
package org.apache.commons.jelly.tags.ojb;
import ojb.broker.PersistenceBroker;
import ojb.broker.PersistenceBrokerException;
import ojb.broker.PersistenceBrokerFactory;
import org.apache.commons.jelly.JellyContext;
import org.apache.commons.jelly.JellyException;
import org.apache.commons.jelly.TagSupport;
import org.apache.commons.jelly.XMLOutput;
/**
* <p>Tag handler for <Driver> in JSTL, used to create
* a simple DataSource for prototyping.</p>
*
* @author <a href="mailto:[EMAIL PROTECTED]">James Strachan</a>
* @version $Revision: 1.4 $
*/
public class BrokerTag extends TagSupport {
/** The variable name to export. */
private String var;
/** The persistence broker instance */
private PersistenceBroker broker;
public BrokerTag() {
}
// Tag interface
//-------------------------------------------------------------------------
public void doTag(XMLOutput output) throws Exception {
if ( var == null ) {
var = "org.apache.commons.jelly.ojb.Broker";
}
if ( broker != null ) {
context.setVariable(var, broker);
getBody().run(context, output);
}
else {
broker = PersistenceBrokerFactory.createPersistenceBroker();
context.setVariable(var, broker);
try {
getBody().run(context, output);
}
finally {
broker.clearCache();
PersistenceBrokerFactory.releaseInstance(broker);
broker = null;
context.removeVariable(var);
}
}
}
// Properties
//-------------------------------------------------------------------------
/** Sets the variable name to define for this expression
*/
public void setVar(String var) {
this.var = var;
}
/** @return the persistence broker instance */
public PersistenceBroker getBroker() {
return broker;
}
/** Sets the persistence broker instance */
public void setBroker(PersistenceBroker broker) {
this.broker = broker;
}
}
1.1
jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/ojb/StoreTag.java
Index: StoreTag.java
===================================================================
/*
* The Apache Software License, Version 1.1
*
* Copyright (c) 1999 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. 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.
*
* 3. The end-user documentation included with the redistribution, if
* any, must include the following acknowlegement:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowlegement may appear in the software itself,
* if and wherever such third-party acknowlegements normally appear.
*
* 4. The names "The Jakarta Project", "Tomcat", and "Apache Software
* Foundation" must not be used to endorse or promote products derived
* from this software without prior written permission. For written
* permission, please contact [EMAIL PROTECTED]
*
* 5. Products derived from this software may not be called "Apache"
* nor may "Apache" appear in their names without prior written
* permission of the Apache Group.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED 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 APACHE SOFTWARE FOUNDATION OR
* ITS 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.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
*/
package org.apache.commons.jelly.tags.ojb;
import ojb.broker.PersistenceBroker;
import ojb.broker.PersistenceBrokerException;
import ojb.broker.PersistenceBrokerFactory;
import org.apache.commons.jelly.JellyContext;
import org.apache.commons.jelly.JellyException;
import org.apache.commons.jelly.TagSupport;
import org.apache.commons.jelly.XMLOutput;
/**
* <p>This Store tag will store the given object in ObjectBridge using
* the given broker or it will use the parent broker tags broker instance.</p>
*
* @author <a href="mailto:[EMAIL PROTECTED]">James Strachan</a>
* @version $Revision: 1.4 $
*/
public class StoreTag extends TagSupport {
/** the value to persist */
private Object value;
/** The persistence broker instance */
private PersistenceBroker broker;
public StoreTag() {
}
// Tag interface
//-------------------------------------------------------------------------
public void doTag(XMLOutput output) throws Exception {
if ( value == null ) {
throw new JellyException( "No value is supplied!" );
}
getBroker().store( value );
}
// Properties
//-------------------------------------------------------------------------
/** Sets the value to be persisted */
public void setValue(Object value) {
this.value = value;
}
/** @return the persistence broker instance */
public PersistenceBroker getBroker() {
if (broker == null) {
BrokerTag brokerTag = (BrokerTag) findAncestorWithClass( BrokerTag.class
);
if ( brokerTag != null ) {
broker = brokerTag.getBroker();
}
else {
broker = (PersistenceBroker) context.getVariable(
"org.apache.commons.jelly.ojb.Broker"
);
}
}
return broker;
}
/** Sets the persistence broker instance */
public void setBroker(PersistenceBroker broker) {
this.broker = broker;
}
}
1.1
jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/ojb/package.html
Index: package.html
===================================================================
<html>
<head>
</head>
<body>
<p>A variety of tags for working with the
<a href="http://objectbridge.sourceforge.net/">ObjectBridge</a> persistence
engine
</p>
</body>
</html>
1.1
jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/ojb/OjbTagLibrary.java
Index: OjbTagLibrary.java
===================================================================
/*
* $Header:
/home/cvs/jakarta-commons-sandbox/jelly/src/java/org/apache/commons/jelly/tags/core/CoreTagLibrary.java,v
1.5 2002/04/26 12:20:12 jstrachan Exp $
* $Revision: 1.5 $
* $Date: 2002/04/26 12:20:12 $
*
* ====================================================================
*
* The Apache Software License, Version 1.1
*
* Copyright (c) 1999-2002 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. 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.
*
* 3. The end-user documentation included with the redistribution, if
* any, must include the following acknowlegement:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowlegement may appear in the software itself,
* if and wherever such third-party acknowlegements normally appear.
*
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
* Foundation" must not be used to endorse or promote products derived
* from this software without prior written permission. For written
* permission, please contact [EMAIL PROTECTED]
*
* 5. Products derived from this software may not be called "Apache"
* nor may "Apache" appear in their names without prior written
* permission of the Apache Group.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED 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 APACHE SOFTWARE FOUNDATION OR
* ITS 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.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*
* $Id: CoreTagLibrary.java,v 1.5 2002/04/26 12:20:12 jstrachan Exp $
*/
package org.apache.commons.jelly.tags.ojb;
import org.apache.commons.jelly.tags.core.CoreTagLibrary;
/** Describes the Taglib. This class could be generated by XDoclet
*
* @author <a href="mailto:[EMAIL PROTECTED]">James Strachan</a>
* @version $Revision: 1.5 $
*/
public class OjbTagLibrary extends CoreTagLibrary {
public OjbTagLibrary() {
registerTag("broker", BrokerTag.class);
registerTag("store", StoreTag.class);
//registerTag("delete", DeleteTag.class);
//registerTag("query", QueryTag.class);
//registerTag("transaction", TransactionTag.class);
}
}
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>