0

我正在尝试构建一种从 JavaFX 应用程序使用 RESTFul 服务的架构。要求是使用 spring 的 rest 模板(不要太紧张。如果 spring 不起作用,那么可能我可以看看 jersey 或 resteasy。

我的设置如下:

我的主类有一个下拉列表,列出了 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;
    }
    

通过上述设置,我得到了异常:

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)
4

1 回答 1

1

似乎您还没有添加包含“BeanCreationException”类的依赖库。请添加 spring 的 jar 文件作为该 JavaFX 项目的依赖项。

于 2013-06-30T17:29:20.210 回答