0

I have created a form in Java Swing and want to validate them with an API. I have included the validation API but when I want to run this class there is an error showing like this:

Exception in thread "main" java.lang.NoClassDefFoundError: org/openide/util/Lookup
    at org.netbeans.validation.api.ui.swing.SwingComponentDecorationFactory.getDefault(SwingComponentDecorationFactory.java:154)
    at org.netbeans.validation.api.ui.swing.SwingValidationGroup.<init>(SwingValidationGroup.java:82)
    at org.netbeans.validation.api.ui.swing.SwingValidationGroup.create(SwingValidationGroup.java:87)
    at org.netbeans.validation.api.ui.swing.ValidationPanel.<init>(ValidationPanel.java:95)
    at org.netbeans.validation.api.ui.swing.ValidationPanel.<init>(ValidationPanel.java:109)
    at Main.main(Main.java:23)
Caused by: java.lang.ClassNotFoundException: org.openide.util.Lookup
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 6 more

The jar file I included is (ValidationAPI.jar) so I don't know what is the problem.

Does anyone know how to solve this?

Here is my code:

import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

import org.netbeans.validation.api.builtin.stringvalidation.StringValidators;
import org.netbeans.validation.api.ui.ValidationGroup;
import org.netbeans.validation.api.ui.swing.ValidationPanel;

public class Main{

@SuppressWarnings("unchecked")
public static void main(String[] args) {

    JPanel inner = new JPanel();
    JLabel lbl = new JLabel("Enter a URL");
    JTextField f = new JTextField();
    f.setColumns(40);
    f.setName("URL");
    inner.add(lbl);
    inner.add(f);


   ValidationPanel panel = new ValidationPanel();
    panel.setInnerComponent(inner);
    ValidationGroup group = panel.getValidationGroup();
//    
    group.add(f, StringValidators.REQUIRE_NON_EMPTY_STRING,
            StringValidators.NO_WHITESPACE);

    if (panel.showOkCancelDialog("URL")) {

      System.out.println("User clicked OK.  URL is " + f.getText());
     System.exit(0);

    }
    else {
      System.err.println("User clicked cancel.");
      System.exit(1);
    }
  }
}
Andrew Thompson
  • 168,117
  • 40
  • 217
  • 433
Noorullah
  • 11
  • 3
  • 2
    http://stackoverflow.com/questions/17973970/how-to-solve-java-lang-noclassdeffounderror – Balwinder Singh Apr 26 '16 at 06:28
  • Look at these threads also: http://stackoverflow.com/questions/3302774/netbeans-visual-library-and-java-lang-noclassdeffounderror http://stackoverflow.com/questions/28268571/validationapi-java-swing – Limmen Apr 26 '16 at 06:30
  • The thing you need to understand in order to solve this, is the run-time [tag:classpath] of the app. *"I have included this API.."* How, exactly? – Andrew Thompson Apr 26 '16 at 06:39
  • i am using this library in eclipse is it work on eclipse or it is just for netbenan – Noorullah Apr 26 '16 at 06:50

0 Answers0