问题标签 [requestscope]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
174 浏览

java - JSP - jsp:include 页面内的所有范围都是空的

我想在其中放置一个变量,requestScope以便可以在其他页面中使用它。不幸的是,requestScope在这个其他页面中完全是空的。事实上,当我#{requestScope}在两页中打印时,它们的内存地址并不相同!

主页面.jsp

包含页面.jsp

如果尝试不同的范围(会话、应用程序等),同样的事情。我不明白。这个方法网上到处都是,为什么不行呢?我第一次使用它。

0 投票
1 回答
1521 浏览

c# - 简单注入器:无法使用 AsyncScopedLifestyle 注册 Web API 控制器

我正在尝试将 Simple Injector (4.0.12) 集成到我的 .NET (4.6.1) Web API 项目中,但找不到使用正确的 .NET 注册所有 Web API 控制器的方法AsyncScopedLifestyle

当我尝试像这样将异步范围的实例DatabaseProvider注入控制器时......

...我收到SimpleInjector.ActivationException以下错误:

DatabaseProvider 注册为“Async Scoped”生活方式,但在活动(Async Scoped)范围的上下文之外请求实例。

但为什么?


这就是我注册控制器的代码的样子:

如您所见,DefaultScopedLifestyle设置为AsyncScopedLifestyle并且我也CustomLifestyleSelectionBehavior为控制器返回了相同的生活方式。

然而,所有控制器似乎都注册为Transient,因为这是container.Verify()所有控制器的输出:

异常类型:DiagnosticVerificationException
异常消息:配置无效。
报告了以下诊断警告:

-[Disposable Transient Component] DatabaseController 注册为transient,但实现了IDisposable。

-[Disposable Transient Component] LoginDataController 注册为瞬态,但实现了 IDisposable。
...

有谁知道如何将 WebAPIController-registrations 的生活方式设置为 AsyncScoped 以便我可以注入异步范围的业务逻辑?

0 投票
1 回答
2448 浏览

python-3.x - 如何使用 beautifulsoup 抓取 javascript 文本

我正在尝试使用 Python 获取由 html 中的外部脚本生成的文本:

我试图得到:“SPÖ”没有成功。

到目前为止,我能够获得脚本中使用的 id:

有什么帮助吗?非常感谢!

0 投票
1 回答
669 浏览

spring - Spring Boot 如何在异步方法中简化 Scope Request bean?

Spring boot 如何在异步方法中轻松使用带有 Request Scope 的 bean。

当我尝试执行时出现异常:

org.springframework.beans.factory.BeanCreationException:创建名为 'bean 的 bean 时出错!class':范围'request'对于当前线程不活动;如果您打算从单例中引用它,请考虑为该 bean 定义一个作用域代理;嵌套异常是 java.lang.IllegalStateException:未找到线程绑定请求:您是指实际 Web 请求之外的请求属性,还是在原始接收线程之外处理请求?如果您实际上是在 Web 请求中操作并且仍然收到此消息,则您的代码可能在 DispatcherServlet/DispatcherPortlet 之外运行:在这种情况下,请使用 RequestContextListener 或 RequestContextFilter 来公开当前请求。

0 投票
0 回答
3532 浏览

java - Spring Autowire 请求范围

在 Spring 中,很容易自动装配 bean 并使它们在应用程序上下文中的任何位置可用。bean 可以专门用于会话/请求/web 套接字等范围。

我有一个相当独特的场景。我从消息代理收到一条消息,这意味着“控制器”中未收到请求。因此,Spring 不会创建@RequestScopebean(Spring 中的所有这些逻辑都是基于使用@Controller/@RequestMapping注释 /DispatchServlet处理程序)。AutowireCapableBeanFactory有没有办法使用 Spring或其他方式在请求范围内创建 bean ?

我想做类似下面的事情,其中​​将SomeService.handle能够访问getName(). RequestScopeBean目前它抛出了这个异常。

例外:

代码

0 投票
0 回答
566 浏览

rest - 并行调用中的骆驼REST服务问题

我创建了一个 REST 服务,其中运行在 Karaf 容器上的 Apache Camel (REST DSL),它接受项目列表并返回这些项目的可用性。问题是如果服务被并行调用,它不会返回正确的结果。例如,假设我们有以下两个调用:

呼叫 1:项目 1、项目 2 呼叫 2:项目 3、项目 4

我希望有以下两个答案

响应 1:availabilityOfItem1,availabilityOfItem2 响应 2:availabilityOfItem3,availabilityOfItem4

但不是那样,我得到的是混合可用性的两个答案

响应 1:availabilityOfItem1、availabilityOfItem2、availabilityOfItem3、availabilityOfItem4 响应 2:availabilityOfItem1、availabilityOfItem2、availabilityOfItem3、availabilityOfItem4

可能由于我为该服务拥有的相关 bean 会出现此问题,但让我概述一下我在 Camel 上下文中所做的工作。

正如您所注意到的,当服务被调用时,它会转到执行该工作的direct:availabilitie路由。我使用availabilitiesBean来初始化响应对象(List),然后对于每个请求项,我从db获得可用性并将结果放入先前初始化的响应对象(buildResponse),最后我返回该对象使用方法getResponse

问题是 bean 有一个单例范围,这意味着对于两个调用都使用相同的 bean。因此,调用 1 写入了 item1 和 item2 的答案,但同时调用 2 在响应中添加了 item3 和 item 4。

是否有可能创建请求范围 bean?或者采用另一种方法来克服这个问题?

非常感谢!

0 投票
0 回答
19 浏览

java - 是否可以从 Singleton 类访问 RequestScoped 类?

我的 Primefaces Webapp 中有一个 Singleton 类,我想从我的数据库中查询一个参数(针对登录用户)。此参数访问功能在其他类中,在我的情况下这不起作用我已经发现抛出异常的位置(构建工作正常)。这是调用层次结构,我认为其他所有内容都无关紧要,因为在应用程序中的其他地方(单例就在这里)工作正常:

我的 Singleton 类 -> 无状态类 -> 其他无状态类 -> ApplicationScoped 类 -> RequestScoped 类

异常来自 RequestScoped 类。

有人可以告诉我这是否可用或整个概念不好?

编辑。:

这是异常本身。主要问题是,这里总是返回默认的 EntityManager,这不好:

0 投票
1 回答
601 浏览

kotlin - Kotlin 协程会始终在同一个线程上运行吗?如果不是,那么我们如何使其与 Guice Request Scope 语义一起使用?

请求范围使我们能够在整个请求处理过程中跟踪请求变量。但我认为这取决于线程局部变量。我假设使用 Kotlin 协程会破坏请求范围语义的 Guice 注入。

0 投票
1 回答
370 浏览

java - 请求范围 bean 不能在响应正文中使用 [Spring Boot]

我有一个 Request scoped(prototype) bean 作为 Rest Controller 的 Response 并得到 Exception ,不工作

我按照错误消息“类型定义错误:[简单类型,类 org.springframework.context.expression.StandardBeanExpressionResolver];嵌套异常是 com.fasterxml.jackson .databind.exc.InvalidDefinitionException:没有为类 org.springframework.context.expression.StandardBeanExpressionResolver 找到序列化程序,也没有发现创建 BeanSerializer 的属性(为避免异常,禁用 SerializationFeature.FAIL_ON_EMPTY_BEANS)(通过参考链:com.epic.dcms.kyc .beans.MainResponse$$EnhancerBySpringCGLIB$$82085c99[\"targetSource\"]->org.springframework.aop.target.SimpleBeanTargetSource[\"beanFactory\"]->org.springframework.beans.factory.support.DefaultListableBeanFactory[\ "beanExpressionResolver\"])",

没有工作然后有一个循环依赖并抛出异常

@RequestScope 注释到 @scope 注释更改也没有解决问题

我注意到只有当 MainResponse 用作响应时才会出现此异常。

当我从 MainResponse bean 中删除 @RequestScope 时,它​​工作正常,知道如何解决这个问题吗?

0 投票
1 回答
2366 浏览

java - Spring的@RequestScope在注入单例bean时会自动处理代理吗?

我正在使用 Java8/Spring Boot 2 应用程序。我想将请求范围的 bean 注入单例 bean。官方文档强调应该使用代理或 ObjectFactory/Provider 来确保在运行时始终在单例 bean 中获取正确范围的 bean 。但是,@RequestScope 注释似乎“自动”设置了某种代理,正如对这个问题的回答中所解释的那样。

我现在想知道以下三种实现是否实际上相同,并且首选哪一种?

方法 1:显式使用 objectFactory<>

方法2:正常注入,假设请求范围的bean是自动代理的?

方法 3:使用 @Configuration 和 @Bean 因为我不知道它们的区别,而且我担心它们的行为会有所不同。

我更喜欢方法 2,因为它简洁并自动处理范围/代理。

如果我的@Autowired bean 被声明为一个final字段,答案会改变吗?我担心让它最终以某种方式阻止代理获取正确获取每个请求的新bean。