Discussions
Categories
- 385.5K All Categories
- 5.1K Data
- 2.5K Big Data Appliance
- 2.5K Data Science
- 453.4K Databases
- 223.2K General Database Discussions
- 3.8K Java and JavaScript in the Database
- 47 Multilingual Engine
- 606 MySQL Community Space
- 486 NoSQL Database
- 7.9K Oracle Database Express Edition (XE)
- 3.2K ORDS, SODA & JSON in the Database
- 585 SQLcl
- 4K SQL Developer Data Modeler
- 188K SQL & PL/SQL
- 21.5K SQL Developer
- 46 Data Integration
- 46 GoldenGate
- 298.4K Development
- 4 Application Development
- 20 Developer Projects
- 166 Programming Languages
- 295K Development Tools
- 150 DevOps
- 3.1K QA/Testing
- 646.7K Java
- 37 Java Learning Subscription
- 37.1K Database Connectivity
- 201 Java Community Process
- 108 Java 25
- 22.2K Java APIs
- 138.3K Java Development Tools
- 165.4K Java EE (Java Enterprise Edition)
- 22 Java Essentials
- 176 Java 8 Questions
- 86K Java Programming
- 82 Java Puzzle Ball
- 65.1K New To Java
- 1.7K Training / Learning / Certification
- 13.8K Java HotSpot Virtual Machine
- 94.3K Java SE
- 13.8K Java Security
- 208 Java User Groups
- 25 JavaScript - Nashorn
- Programs
- 667 LiveLabs
- 41 Workshops
- 10.3K Software
- 6.7K Berkeley DB Family
- 3.6K JHeadstart
- 6K Other Languages
- 2.3K Chinese
- 207 Deutsche Oracle Community
- 1.1K Español
- 1.9K Japanese
- 474 Portuguese
upgrade to 12.2.1.4 adf.currentDate + 90 does not work

We are trying to upgrade from 12.2.1.0 to 12.2.1.4. We have VO attributes with expression like adf.currentDate+ 90 to initialize the attributes. This does not work in new version. Does anyone know any workaround?
Below is the log
groovy.lang.MissingMethodException: No signature of method: java.sql.Date.plus() is applicable for argument types: (Integer) values: [90]
Possible solutions: parse(java.lang.String), is(java.lang.Object), use([Ljava.lang.Object;), split(groovy.lang.Closure), wait(), clone()
Best Answer
-
We found that the jar groovy-dateutil-2.5.6 is missing in the new jdev version. After adding it the issue is solved.
Answers
-
Well, the groovy expression adf.curentDate returns a Date type. As you can't add an integer to a Date, you get the error.
What 90 do you want to add anyway? Days? Month? Seconds?
Timo
-
yes we need to add 90 days to current day. This is working in 12.2.1. currently.
-
In 12.1.2 groovy was not type save and some things worked. Now you have to program it yourself.
Eg. you can get the current date as milliseconds and add the milliseconds calculated for 90 days (90*24*60*60*1000) add the two values and create a new date from the result.
Timo
-
What is the Groovy version? Could be the bug discussed at https://github.com/groovy/GMavenPlus/issues/100
-
We found that the jar groovy-dateutil-2.5.6 is missing in the new jdev version. After adding it the issue is solved.
-
I have used groovy-dateutil-2.5.6 jar in my application, but still, the issue is not been resolved.
-
Can you confirm that groovy expressions work in the 12.2.1.4 version? We did not upgrade from 12.2.1.3 version because of those issues.
-
<dependency> <groupId>org.codehaus.groovy</groupId> <artifactId>groovy-dateutil</artifactId> <version>2.5.0</version> <classifier>indy</classifier> </dependency>
Which is what was suggested earlier:
Could be the bug discussed at https://github.com/groovy/GMavenPlus/issues/100
-
Yes groovy expressions work in the 12.2.1.4 version which is why we are in the middle of the upgrade.
-
Hello there, you can use this syntax to add days to current date instead of using adf.currentDate+ (no of days):
import groovy.time.TimeCategory
def now = new Date()
use(TimeCategory) {
days365 = now + 365.days
return new java.sql.Timestamp(days365.time)
}
Let me know if this is not working for you!
Thanks.