草庐IT

Tomcat-Spring-Hibernate

全部标签

java - Spring Web Reactive 不能作为部署在 Tomcat 8.5 上的 war 文件工作

我有提供一些RESTAPI的SpringBoot(2.0.0M5)应用程序。我想使用RouterFunction实现这个API。当我使用嵌入式Jetty运行应用程序时,一切正常。当我将应用程序转换为WAR文件(在documentationhere之后)并将其部署到Tomcat8.5时,我在尝试调用任何端点时总是得到404。我可以在日志中看到端点已被识别:[ost-startStop-1]s.w.r.r.m.a.RequestMappingHandlerMapping:Mapped"{[/say-hello],methods=[GET]}"ontojava.lang.Stringcom.

java - Tomcat 7,Spring rest 模板应用程序在浏览器中生成 err_invalid_chunked_encoding

我有一个Tomcat7,Spring4.2'RestController'RESTAPI的实现,它似乎为返回JSON响应的少数API调用生成了'ERR_INVALID_CHUNKED_ENCODING'。创建ResponseEntity的代码相同。但是对于少数API调用,"Content-Length"设置正确,而其他调用"Transfer-Encoding"设置为Chunked。privateCacheControlcacheControl=CacheControl.noStore().mustRevalidate();protectedResponseEntity>createEn

java - 为什么更改 WEB-INF/lib 中 jar 文件的目录顺序会导致 Tomcat 8 中出现 NoClassDefFoundError?

我们有一个在Tomcat8中运行的Web应用程序,最近我们观察到我们团队中一些开发人员构建的Artifact(.war文件)抛出一个NoClassDefFoundError,而同样的其他人构建的代码按预期运行。来自logs/localhost.2018-05-11.log:org.jboss.resteasy.spi.UnhandledException:java.lang.NoClassDefFoundError:Couldnotinitializeclassorg.geotools.referencing.datum.DefaultEllipsoid...Causedby:java

java - 有没有办法从元注释中注入(inject) Jackson 注释值,类似于 Spring 的 AliasFor 注释?

我们正在使用@JacksonAnnotationsInside并希望使用元注释从类中注入(inject)一个属性。即我们有一个带有@JsonTypeInfo()的元注解,并希望通过聚合注解注入(inject)defaultImpl。这是我尝试使用的注释:@Inherited@JacksonAnnotationsInside@Retention(RetentionPolicy.RUNTIME)@JsonTypeInfo(use=JsonTypeInfo.Id.CLASS,include=JsonTypeInfo.As.PROPERTY,property="@class")//,defau

java - 为 JMS 监听器处理 Spring Security 的首选方法是什么?

我有一个有点单一的Java应用程序,它围绕我的业务服务层的Spring@Servicebeans构建。通常,我的每个业务服务方法都有SpringSecurity注释(例如@PreAuthorize)来为该操作执行适当的授权规则。在主要的web应用程序流程中,这工作得很好;每个Web请求都隐含地由sessioncookie等处理身份验证。但是,当涉及到与其他“内部”系统的各种集成点时,我看不出一个明确的解决方案。例如,我将使用JMS队列中的方法,该队列已经在代理中定义了自己的身份验证和授权规则,因此我想隐式地“信任”我收到的消息。然而,就目前情况而言,像这样的足够简单的Camel路线:W

java - AuditingEntityListener 的 Spring JPA Hibernate CET 时区

我没有成功为我的JPA应用程序设置CET时区,该应用程序使用AuditingEntityListener来增加创建/上次修改日期。我已经尝试过的事情:在我的application.properties(两种组合)中:spring.jpa.properties.hibernate.jdbc.time_zone=UTC+1spring.jpa.properties.hibernate.jdbc.time_zone=CET将时区添加到我的JDBC连接(两种组合)spring.datasource.url=jdbc:mysql://host:3306/db?useUnicode=true&us

java - Spring Security 5 在 Application Runner 中调用 OAuth2 Secured API 导致 IllegalArgumentException

给定以下代码,是否可以在应用程序运行器中调用受客户端凭据保护的API?@BeanpublicApplicationRunnertest(WebClient.Builderbuilder,ClientRegistrationRepositoryclientRegistrationRepo,OAuth2AuthorizedClientRepositoryauthorizedClient){returnargs->{try{varoauth2=newServletOAuth2AuthorizedClientExchangeFilterFunction(clientRegistrationRe

java - Spring Web 客户端 : How to stream large byte[] to file?

好像是SpringRestTemplate如果不将响应全部缓冲在内存中,则无法将响应直接流式传输到文件。使用较新的Spring5WebClient实现此目的的正确方法是什么??WebClientclient=WebClient.create("https://example.com");client.get().uri(".../{name}",name).accept(MediaType.APPLICATION_OCTET_STREAM)....?我看到人们已经通过RestTemplate找到了解决此问题的一些解决方法/技巧,但我更感兴趣的是使用WebClient以正确的方式进行操作

java - 在 Hibernate 中通过映射表值排序

我有一个@ManyToMany映射,其中表通过映射表自引用,我们想根据实际映射表中的订单ID进行订购,但发现很难配置它。我们可以在hibernatexml中执行它,因此很自然地假设支持在JPA注释中存在。有人知道我们如何对映射表中的值进行排序吗?表格是:wap_site_componentsintidstrnameintcomponentdefdtmcreatedintcustomer而自引用的映射表是:wap_site_component_relationsintidintparent(referencesintidinwap_site_components)intchild(ref

java - 在*多线程* Swing 应用程序中使用 Hibernate 进行 session 管理

我目前正在从事我的一个(相当大的)宠物项目,一个本质上需要多线程的Swing应用程序。几乎所有的用户交互都可能通过互联网从一些远程服务器获取数据,因为我既不控制这些服务器也不控制互联网本身,因此较长的响应时间是不可避免的。当EDT繁忙时,SwingUI显然无法重绘自身,因此所有远程服务器调用都需要由后台线程执行。我的问题:后台线程获取的数据通过本地(内存中)数据库中的数据“丰富”(远程服务器返回本地数据库中数据的ID/引用)。这些数据后来最终被传递到EDT,在那里它成为View模型的一部分。某些实体此时未完全初始化(启用延迟获取),因此用户可能会触发延迟获取,例如在JTable中滚动。