[
https://issues.apache.org/jira/browse/VELOCITY-963?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Claude Brisson updated VELOCITY-963:
------------------------------------
Component/s: Documentation
(was: Engine)
> Incompatible API changes in 2.x
> -------------------------------
>
> Key: VELOCITY-963
> URL: https://issues.apache.org/jira/browse/VELOCITY-963
> Project: Velocity
> Issue Type: Bug
> Components: Documentation
> Affects Versions: 2.0, 2.1, 2.2, 2.3
> Reporter: Éamonn McManus
> Priority: Minor
>
> I recently tried porting a large amount of Velocity client code from 1.7 to
> 2.3 and discovered a number of incompatible API changes. Some of these were
> probably unavoidable but at least one could be fixed to ease this kind of
> migration.
> * The three RuntimeInstance.parse methods from 1.7 were replaced by a single
> RuntimeInstance.parse(Reader, Template) method. I found that I could work
> around this by changing this:
> SimpleNode node = runtimeInstance.parse(reader, resourceName);
> to this:
> Template template = new Template();
> template.setName(resourceName);
> SimpleNode node = runtimeInstance.parse(reader, template);
> But it would be convenient for people migrating if the old overloads were
> restored. (This might not be the best way to parse a template, but it was
> certainly quite widely used in the code I was porting.)
> * VelocityContext(Map) becomes VelocityContext(Map<String, Object>). Some of
> the code was passing a Map<String, String> or a Map<String, ?>. That would
> work if the argument type were Map<String, ?>, but I don't think that would
> be correct since I believe the Map can be updated by #set directives. So
> perhaps document this more explicitly.
> * This abstract method in ResourceLoader
> InputStream getResourceStream(String source)
> becomes
> Reader getResourceReader(String source, String encoding)
> I'm not sure there would have been a good way to allow subclasses of
> ResourceLoader to continue to work without change, and this change _is_
> documented in the [migration
> guide|https://velocity.apache.org/engine/2.0/upgrading.html#behavior-api-changes]
> so there's probably nothing further to do here.
> * Nearly all the methods in StringUtils have been deleted, and that's not
> mentioned in the migration guide.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]