取决于非Spring项目的Spring项目

时间:2017-03-06 17:14:18

标签: java spring

我有两个必须合并的Java应用程序。一个是Spring,其中的方法需要由第二个调用,一个Elasticsearch插件(我认为不能将其转换为Spring应用程序,因为它已经使用某种形式的Guice进行依赖注入)。

我需要调用的Spring类看起来像:

dataTypesMap

如果我只是在ES插件中将此项目添加为Maven依赖项,则自动装配的express deprecated res.send(status, body): Use res.status(status).send(body) instead app.js:18:10 _http_server.js:193 throw new RangeError(`Invalid status code: ${statusCode}`); ^ RangeError: Invalid status code: 0 at ServerResponse.writeHead (_http_server.js:193:11) at ServerResponse._implicitHeader (_http_server.js:158:8) at ServerResponse.OutgoingMessage.end (_http_outgoing.js:585:10) at ServerResponse.send (/home/ubuntu/workspace/APIs/movieapp/node_modules/express/lib/response.js:211:10) at ServerResponse.json (/home/ubuntu/workspace/APIs/movieapp/node_modules/express/lib/response.js:256:15) at ServerResponse.send (/home/ubuntu/workspace/APIs/movieapp/node_modules/express/lib/response.js:158:21) at Request._callback (/home/ubuntu/workspace/APIs/movieapp/app.js:18:10) at Request.self.callback (/home/ubuntu/workspace/APIs/node_modules/request/request.js:187:22) at emitTwo (events.js:87:13) at Request.emit (events.js:172:7) 始终为空(这是预期的,因为Elasticsearch插件中的任何内容都不会告诉它如何自动装配)。 / p>

我可以在这做什么?

1 个答案:

答案 0 :(得分:0)

您可以为自动装配字段使用setter方法,然后设置值。

@autowired
public void setDataTypesMap (DataTypesMap  dataTypesMap ){
 this.dataTypesMap = dataTypesMap ;
}

在您的应用程序中,您无法自动装配bean,但您可以设置它。

myBean.setDataTypeMap();

第二个选项是在非弹簧应用程序内启动弹簧应用程序的上下文。

你可以在这里看到如何做到这一点。

http://www.springbyexample.org/examples/intro-to-ioc-creating-a-spring-application.html