JavaFX2:使用Restful服务

时间:2013-04-23 20:58:31

标签: web-services spring rest javafx-2

我正在尝试使用体系结构来从JavaFX应用程序中使用RESTFul服务。要求是使用弹簧的休息模板(对此没有太大的压力。如果弹簧不起作用,那么我可能会看看球衣或重新涂抹。

我的设置如下:

我的主要类有一个下拉列表,列出了RESTFul服务的值。

点击RESTFul服务的架构如下:

  1. 我有一个客户端类,它为我提供了服务于其余服务的服务类的实例。

  2. 在服务类中,我在RESTFul服务上使用了各种方法。

    public MyService1()
    {
        AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(
            MyConfig.class);
        context.registerShutdownHook();
    }
    
    @Autowired
    private RestOperations restTemplate;
    
    private final Logger   LOG = LoggerFactory.getLogger(MyService1.class);
    
    public List<MyObject> getMyObjects() throws IOException
    {
        HttpEntity<MultiValueMap<String, HttpEntity<?>>> request = new HttpEntity<MultiValueMap<String, HttpEntity<?>>>(
            createParts(), createMultiPartHeaders());
    
        Map<String, String> vars = new HashMap<String, String>();
    
        List<MyObject> myObjects = restTemplate.getForObject(
            "http://localhost:8080/my-webservices/objects", List.class, vars);
    
        return myObjects;
    }
    
  3. 通过上面的设置,我得到了例外:

    Exception in Application start method
    Exception in thread "main" java.lang.RuntimeException: Exception in Application start method
    at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:403)
    at com.sun.javafx.application.LauncherImpl.access$000(LauncherImpl.java:47)
    at com.sun.javafx.application.LauncherImpl$1.run(LauncherImpl.java:115)
    at java.lang.Thread.run(Thread.java:722)
    Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.springframework.beans.factory.BeanCreationException
    at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:581)
    

1 个答案:

答案 0 :(得分:1)

好像你还没有添加包含“BeanCreationException”类的依赖库。请添加spring的jar文件作为JavaFX Project的依赖项。