Project Wonder 5.0

er.extensions.components
Class ERXSLTWrapper

java.lang.Object
  extended by com.webobjects.appserver.WOElement
      extended by com.webobjects.appserver.WOComponent
          extended by er.extensions.components.ERXComponent
              extended by er.extensions.components.ERXNonSynchronizingComponent
                  extended by er.extensions.components.ERXSLTWrapper
All Implemented Interfaces:
com.webobjects.appserver.WOActionResults, com.webobjects.foundation.NSKeyValueCoding, com.webobjects.foundation.NSKeyValueCoding.ErrorHandling, com.webobjects.foundation.NSKeyValueCodingAdditions, com.webobjects.foundation.NSValidation, java.io.Serializable, java.lang.Cloneable

public class ERXSLTWrapper
extends ERXNonSynchronizingComponent

Wrapper that translates its content via XSLT. The content must be valid XML for this to work. This is pretty usefull in conjunction with DynaReporter when you want to use one of the zillion PDF libs. You can generate the content via DynaReporter and then transform the content to a form that the PDF lib understands. Most likely this will be much easier than trying to re-generate the report with XML.
Other uses include a simple transformation of the generated front end code to privide for "skinning". As there is only so much you can do with CSS, you might need to structurally change the generated HTML prior to handing it to the client.
Note that XSLT engines vary greatly in speed. The default case of using Xalan which is included by WO is probably not the best choice for a site with a little bit of traffic. Therefore there is an option where you can set the transformer factory name to use, you also need to include the corresponding jar into the classpath.

See Also:
Serialized Form
Author:
ak on 07.04.05
Bindings
enabled flag that decides if the transformation is applied. If not set, then only the content will be shown.
           
stylesheet name of the XLST stylesheet (mandatory)
           
transformerFactory name of the class for the XSLT transformer factory (optional, defaults to Xalan)
           
framework name of the XLST stylesheet's framework (optional)
           
data will be set to the transformed data (optional)
           
stream will be set to the transformed data (optional)
           
nocache flag that if set creates a new transformer instead of using the one in the cache. Useful when deleloping the stylesheet.
           

Nested Class Summary
static class ERXSLTWrapper.TemplatePool
           
 
Nested classes/interfaces inherited from class com.webobjects.appserver.WOComponent
com.webobjects.appserver.WOComponent._EventLoggingEnabler, com.webobjects.appserver.WOComponent.Event
 
Nested classes/interfaces inherited from interface com.webobjects.foundation.NSKeyValueCodingAdditions
com.webobjects.foundation.NSKeyValueCodingAdditions.DefaultImplementation, com.webobjects.foundation.NSKeyValueCodingAdditions.Utility
 
Nested classes/interfaces inherited from interface com.webobjects.foundation.NSKeyValueCoding
com.webobjects.foundation.NSKeyValueCoding._BooleanFieldBinding, com.webobjects.foundation.NSKeyValueCoding._BooleanMethodBinding, com.webobjects.foundation.NSKeyValueCoding._FieldBinding, com.webobjects.foundation.NSKeyValueCoding._ForwardingBinding, com.webobjects.foundation.NSKeyValueCoding._KeyBinding, com.webobjects.foundation.NSKeyValueCoding._KeyBindingCreation, com.webobjects.foundation.NSKeyValueCoding._MethodBinding, com.webobjects.foundation.NSKeyValueCoding._NumberFieldBinding, com.webobjects.foundation.NSKeyValueCoding._NumberMethodBinding, com.webobjects.foundation.NSKeyValueCoding._ReflectionKeyBindingCreation, com.webobjects.foundation.NSKeyValueCoding.ErrorHandling, com.webobjects.foundation.NSKeyValueCoding.Null, com.webobjects.foundation.NSKeyValueCoding.UnknownKeyException, com.webobjects.foundation.NSKeyValueCoding.ValueAccessor
 
Nested classes/interfaces inherited from interface com.webobjects.foundation.NSValidation
com.webobjects.foundation.NSValidation._MethodBinding, com.webobjects.foundation.NSValidation._ValidationBinding, com.webobjects.foundation.NSValidation.DefaultImplementation, com.webobjects.foundation.NSValidation.Utility, com.webobjects.foundation.NSValidation.ValidationException
 
Field Summary
 
Fields inherited from class er.extensions.components.ERXComponent
_dynamicBindings
 
Fields inherited from class com.webobjects.appserver.WOComponent
_Extension, _IsEventLoggingEnabled, _keyAssociations
 
Fields inherited from interface com.webobjects.foundation.NSKeyValueCoding.ErrorHandling
_CLASS
 
Fields inherited from interface com.webobjects.foundation.NSKeyValueCodingAdditions
_CLASS, _KeyPathSeparatorChar, KeyPathSeparator
 
Fields inherited from interface com.webobjects.foundation.NSKeyValueCoding
NullValue
 
Fields inherited from interface com.webobjects.foundation.NSValidation
_CLASS
 
Constructor Summary
ERXSLTWrapper(com.webobjects.appserver.WOContext context)
          Public constructor
 
Method Summary
 void appendToResponse(com.webobjects.appserver.WOResponse response, com.webobjects.appserver.WOContext context)
          Overridden to get use apply the XLST transformation on the content.
static javax.xml.transform.Transformer getTransformer(java.lang.String framework, java.lang.String filename)
           
static com.webobjects.foundation.NSData transform(javax.xml.transform.Transformer transformer, com.webobjects.foundation.NSData data)
           
static java.lang.String transform(javax.xml.transform.Transformer transformer, java.lang.String xml)
           
 
Methods inherited from class er.extensions.components.ERXNonSynchronizingComponent
invokeAction, isStateless, resetCachedBindingsInStatefulComponent, synchronizesVariablesWithBindings, takeValuesFromRequest
 
Methods inherited from class er.extensions.components.ERXComponent
_awakeInContext, _checkAccess, _frameworkName, _includeCSSResources, _includeJavascriptResources, additionalCSSFiles, additionalJavascriptFiles, booleanValueForBinding, booleanValueForBinding, booleanValueForBinding, checkAccess, clickToOpenEnabled, componentName, defaultCSSPath, defaultJavascriptPath, dynamicBindings, floatValueForBinding, intValueForBinding, isPageAccessAllowed, localizer, objectValueForBinding, objectValueForBinding, pageWithName, postAppendToResponse, preAppendToResponse, primaryCSSFile, primaryJavascriptFile, reset, stringValueForBinding, stringValueForBinding, useDefaultComponentCSS, useDefaultComponentJavascript
 
Methods inherited from class com.webobjects.appserver.WOComponent
_associationWithName, _childTemplate, _componentDefinition, _componentUnroll, _isPage, _setContext, _setIsPage, _setParent, _setSubcomponent, _sleepInContext, _subcomponentForElementWithID, _templateNameForClass, _unroll, application, awake, baseURL, bindingKeys, canAccessFieldsDirectly, canGetValueForBinding, canSetValueForBinding, clone, context, debugString, descriptionForResponse, ensureAwakeInContext, frameworkName, generateResponse, handleQueryWithUnboundKey, handleTakeValueForUnboundKey, hasBinding, hasSession, isCachingEnabled, isEventLoggingEnabled, logString, name, pageWithName, parent, path, pathURL, performParentAction, pullValuesFromParent, pushValuesToParent, session, set_componentUnroll, set_unroll, setCachingEnabled, setValueForBinding, sleep, takeValueForKey, takeValueForKeyPath, template, templateWithHTMLString, templateWithName, toString, unableToSetNullForKey, validateTakeValueForKeyPath, validateValueForKey, validationFailedWithException, valueForBinding, valueForKey, valueForKeyPath
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ERXSLTWrapper

public ERXSLTWrapper(com.webobjects.appserver.WOContext context)
Public constructor

Parameters:
context - the context
Method Detail

appendToResponse

public void appendToResponse(com.webobjects.appserver.WOResponse response,
                             com.webobjects.appserver.WOContext context)
Overridden to get use apply the XLST transformation on the content.

Overrides:
appendToResponse in class ERXNonSynchronizingComponent
Parameters:
response - to which we are appending
context - context of the response
Throws:
javax.xml.transform.TransformerException

getTransformer

public static javax.xml.transform.Transformer getTransformer(java.lang.String framework,
                                                             java.lang.String filename)

transform

public static java.lang.String transform(javax.xml.transform.Transformer transformer,
                                         java.lang.String xml)
                                  throws javax.xml.transform.TransformerException
Throws:
javax.xml.transform.TransformerException

transform

public static com.webobjects.foundation.NSData transform(javax.xml.transform.Transformer transformer,
                                                         com.webobjects.foundation.NSData data)
                                                  throws javax.xml.transform.TransformerException
Throws:
javax.xml.transform.TransformerException

Last updated: Tue, Feb 21, 2017 • 05:45 PM CET

Copyright © 2002 – 2007 Project Wonder.