Unsupported Velocity Tools Disabled in June 2019 Release | Community
Skip to main content
Roxann_McGlump1
Level 5
April 19, 2019

Unsupported Velocity Tools Disabled in June 2019 Release

  • April 19, 2019
  • 13 replies
  • 4718 views

To enhance the stability of Marketo’s email assembly infrastructure, we are disabling some Velocity Script functionality on June 14, 2019.

What change is being made?

The following Velocity Tools will permanently be disabled for use in email script, on June 14, 2019.

My Tokens:

  • classTool
  • contextTool
  • resourceTool

Some common use examples of these tools include:

  • $class.
  • getClass()
  • $context.

When are these changes taking effect?

These changes will take effect in the June 2019 Release on June 14, 2019.

How did it work before?

The way Velocity Tools are used in your email scripts is highly dependent on the structure of your code and varies on a case-by-case basis. To identify how you are currently utilizing Velocity Tools in your email design, please consult directly with your developer. Documentation on each tool can be found on Apache’s website at the links below:

classTool : https://velocity.apache.org/tools/devel/apidocs/org/apache/velocity/tools/generic/ClassTool.html

contextTool: https://velocity.apache.org/tools/devel/apidocs/org/apache/velocity/tools/generic/ContextTool.html

resourceTool: https://velocity.apache.org/tools/devel/apidocs/org/apache/velocity/tools/generic/ResourceTool.html

Why is this changing?

We regularly review our infrastructure to ensure it meets the highest standards for stability and security. During a recent review, we identified that a small subset of Velocity Tools could potentially impact the health of our message assembly servers, and as a result, we made the decision to disable these permanently.

What do I need to do?

If you are currently using Velocity Tools in your email scripting, you will need to review and update your script to use alternate methods before June 14, 2019. Documentation on supported Velocity Scripting can be found on our Developers’ site at http://developers.marketo.com/email-scripting/. Any email script tokens still referencing Velocity Tools after the June 14, 2019 deadline could fail to compile, resulting in emails not rendering as expected or complete send failure.

We have identified impacted customers using these Velocity Tools and will alert them individually via Marketo Notifications.

Considering the customized nature of Velocity Scripting, Marketo Support is not able to assist with the authoring or troubleshooting of custom code. Please reach out to your developer for assistance. If you no longer have access to a technical resource, you may also contact your CSM to coordinate a scoping call with our Professional Services team.

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.

13 replies

April 30, 2019

When you say you will alert customers "individually via Marketo Notifications", you mean in platform notifications right?

f29f57302b2accfe0052d3d2b252ac3d-full.png

If so, how soon can we expect to receive those and how specific will they be? Will they name the specific tokens that need to be updated?

We have a number of tokens that may or may not be impacted which I scripted myself, so I'm just trying to determine whether I should start scouring my code for these references or if these notifications are going to help me do some of that work.

Steven_Vanderb3
Adobe Employee
Adobe Employee
April 30, 2019

Thursday Evening (US time) is when the notifications should start to appear in instances currently using these tools.

April 30, 2019

Awesome.

I guess I can wait until then to see what's included in those notifications.

Thanks, Steven!

Steven_Vanderb3
Adobe Employee
Adobe Employee
May 2, 2019

Hi Osman,

We are needing a bit more time on the notification end.  Likely will go out early next week.  I'll reply here to confirm.

May 3, 2019

Okay. Thank you, Steven! Really appreciate the update! Have a great weekend!

May 10, 2019

Hey, Steven!

Just wondering if there's any timeline on these notifications yet.

Or maybe they were already pushed out and our instance wasn't one of those impacted by these changes?

One can always hope. 

Steven_Vanderb3
Adobe Employee
Adobe Employee
May 13, 2019

Hi Osman,

I'm sorry!  They were pushed out last week.  If you didn't get one, you should be unaffected.

May 13, 2019

No trouble at all! we received no notification, so it looks like we have been "granted clemency". 

Thanks, Steven! 

Mihai_Dobrescu4
May 15, 2019

Hi,

Any chance on telling us some of the alternatives to the 3 tools that will depreciate after the June update?

Thank you,

Mihai

Annette_Giorda1
July 1, 2019

We'rd stuck in this boat, too.

We're using the "context" tool to help generate a date format.  Can anyone help us figure out a way around using that tool?  Script is below.

#set ( $inTimeZone = $date.getTimeZone().getTimeZone('America/Los_Angeles') )
#set ( $outTimeZone = $date.getTimeZone().getTimeZone('America/Los_Angeles') )
#set ( $locale = $date.getLocale() )
#set ( $String = $context.getClass().forName("java.lang.String") )
#set ( $LocaleFrom2Part = $locale.getClass().getConstructor($String,$String) )
#set ( $locales = {
   "en_US" : $LocaleFrom2Part.newInstance("en","US"),
   "es_ES" : $LocaleFrom2Part.newInstance("es","ES")
})
#set ( $myDate=$convert.parseDate($lead.mcmnextpaymentduedate,'yyyy-MM-dd',$locale,$inTimeZone) )
#if(${lead.mcmlanguageindicator}=="SPANISH")
${date.format("d 'de' MMMM 'de' yyyy",$myDate,$locales.es_ES,$outTimeZone)}#else
${date.format("MMM d, yyyy",$myDate,$locales.en_US,$outTimeZone)}#end