How use langugetool in a servlet

Hi everyone, I tried use langugetool in a servlet, but show two error:

  1. Could not initialize class com.sun.jna.Native
    java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native
    at org.languagetool.rules.spelling.hunspell.Hunspell.(Hunspell.java:92)
    at org.languagetool.rules.spelling.hunspell.Hunspell.getInstance(Hunspell.java:68)
    at org.languagetool.rules.spelling.hunspell.Hunspell.getInstance(Hunspell.java:54)
    at org.languagetool.rules.spelling.hunspell.HunspellRule.init(HunspellRule.java:163)
    at org.languagetool.rules.spelling.SpellingCheckRule.resetIgnoreTokens(SpellingCheckRule.java:104)…

  2. java.lang.UnsupportedClassVersionError: org/languagetool/Language : Unsupported major.minor version 51.0
    java.lang.ClassLoader.defineClass1(Native Method)
    java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
    java.lang.ClassLoader.defineClass(ClassLoader.java:615)…

I want use languagetool in a servlet, How can do it?.

Best regards.

1.) It seems jna.jar is missing in your classpath for some reason.

2.) You will need Java 7. If you are still on Java 6 you can only use LanguageTool 2.2 or earlier.

Hi dnaber,

i have the same problem as state by 1. of Laotshi. I already tried putting the jna.jar and hunspell-native-libs.jar into the WEB-INF/lib and TOMCAT_HOME/lib directories but with no success.

Any idea why the class is not found (or could not be initialized)?

Cheers
Werzi2001

Hi Werzi2001, which version of LanguageTool, Java and Tomcat do you use? Which operating system?

Wow that was fast. And it immediately gave me the right hint. I was not using the Oracle JRE 7 but the OpenJDK one. I switched to the original one and now it is running.

Thanks for giving me the right questions :wink: