Я хочу преобразовать XML с помощью XSLT с помощью XALAN. Теперь я хочу использовать функцию расширения, эта функция должна быть добавлена в исходный код JAVA, как в SAXON:
Метод:
TransformerFactory tFactory = TransformerFactory.newInstance();
Configuration c = ((net.sf.saxon.TransformerFactoryImpl) tFactory).getConfiguration();
c.registerExtensionFunction(new FooExtension());
FooExtension:
public class FooExtension extends ExtensionFunctionDefinition {
private static final long serialVersionUID = -8143237239412146617L;
@Override
public SequenceType[] getArgumentTypes() {
return new SequenceType[] { SequenceType.EMPTY_SEQUENCE };
}
@Override
public StructuredQName getFunctionQName() {
return new StructuredQName("ns", "http://namespace", "generate-guid");
}
}
Но как это работает в XALAN (? FunctionTable ?,? FunctionResolver ?,? URIResolver?), Я должен делать это по источнику, мне не разрешено добавлять класс в XSLT.
Спасибо !!