Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在没有服务器的情况下自动连接httpsession_Java_Spring_Httpsession - Fatal编程技术网

Java 如何在没有服务器的情况下自动连接httpsession

Java 如何在没有服务器的情况下自动连接httpsession,java,spring,httpsession,Java,Spring,Httpsession,我有一个通用类K,它自动连接HttpSession。 该类得到扩展: A扩展K B扩展K 现在classA需要HttpSession,它将作为web应用程序在tomcat服务器中运行 但B不需要在服务器上运行,因为它有批处理作业。因此,不需要HttpSession 使用主程序运行B时,它会抛出httpsession的异常nobeandef。有几种方法可以避免B需要httpsession。最简单的方法是使自动布线成为可选: @Autowired(required = false) 这应该可以

我有一个通用类
K
,它自动连接
HttpSession
。 该类得到扩展:

  • A扩展K
  • B扩展K
现在class
A
需要
HttpSession
,它将作为web应用程序在tomcat服务器中运行

B
不需要在服务器上运行,因为它有批处理作业。因此,不需要HttpSession


使用主程序运行
B
时,它会抛出httpsession的异常nobeandef。

有几种方法可以避免
B
需要
httpsession
。最简单的方法是使自动布线成为可选:

@Autowired(required = false)
这应该可以满足您的需要,但其副作用是
A
也不再需要它


另一种方法是将
@Autowired
移动到
HttpSession
a
上的setter方法。这将保持
A
所需的依赖性,但Spring将不再需要尝试将其连接到
B

您所说的
A
有tomcat服务器是什么意思?tomcat服务器是运行应用程序的服务。因此,java类不能“拥有”tomcat服务器我们有两种配置…一种用于web应用程序,另一种用于批处理…对于批处理服务器,不需要,但我们使用相同的java类编辑您的问题并解释,以便用户能够理解您要在@SAM的评论中添加的内容,如果无法提供堆栈跟踪、使用过的框架等,则很难理解您的问题。
HttpSession
可以来自各种库,并且每个库可以以不同的方式实例化。请为您的问题添加更多细节,尤其是异常堆栈,因为它们提供了大量信息。