我正在开发一个带有 Spring 安全性的过滤器,它扩展了
OncePerRequestFilter类,它必须更新 REST 服务中的参数。参数由带有注释的标头输入@RequestHeader。
我尝试使用以下类更新过滤器中的参数:
public class HeaderMapRequestWrapper extends HttpServletRequestWrapper {
/**
* construct a wrapper for this request
*
* @param request
*/
public HeaderMapRequestWrapper(HttpServletRequest request) {
super(request);
}
private Map<String, String> headerMap = new HashMap<String, String>();
/**
* add a header with given name and value
*
* @param name
* @param value
*/
public void addHeader(String name, String value) {
headerMap.put(name, value);
}
public void removeteHeader(String name){
headerMap.remove(name);
}
@Override …Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个包含两个REST Web服务的事务,其数据源指向相同的数据库。第一个服务名为1,调用2使用Spring RestTemplate 命名的另一个Web服务。
为了实现事务,我使用了JNDI连接池,MySql JDBC驱动程序(版本5.1.35),JTA,XA,Spring和GlassFish 5 AppServer。
现在,我已经在Spring项目中下载了maven依赖项,使用定义了一个配置类JtaTransactionManager,并在application.yml文件中配置了数据源和JTA属性,如以下代码所示:
配置类:
@Configuration
@EnableTransactionManagement
public class Transacciones {
@Bean
public PlatformTransactionManager platformTransactionManager(){
return new JtaTransactionManager();
}
}
Run Code Online (Sandbox Code Playgroud)
application.yml文件
spring:
datasource:
jndi-name: jdbc/Prueba
driver-class-name: com.mysql.jdbc.Driver
jta:
enabled: true
Run Code Online (Sandbox Code Playgroud)
我在GlassFish 5中配置了JNDI数据源,并jdbc/Prueba使用javax.sql.XADataSource名为的数据源定义了在“连接池”页面中命名的“ JDBC资源” pruebaXA:
在Web服务的控制层中1,该方法2使用RestTemplateSpring Framework 的类调用服务:
服务1代码:
@RestController
@RequestMapping("/servicio")
@EnableTransactionManagement
public class a {
@Autowired
private JdbcTemplate objJdbcTemplate;
@Transactional(rollbackFor = RuntimeException.class)
@GetMapping("/1")
public Integer getValor(){ …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用插件jaxb2-maven-plugin从wsdl创建Java类。
我使用1.5版和以下代码(链接:从WSDL使用jaxb2-maven-plugin生成类)获得了它:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxb2-maven-plugin</artifactId>
<version>1.5</version>
<executions>
<execution>
<id>xjc</id>
<goals>
<goal>xjc</goal>
</goals>
</execution>
</executions>
<configuration>
<!-- Package to store the generated file -->
<packageName>com.example.demo.wsdl</packageName>
<!-- Treat the input as WSDL -->
<wsdl>true</wsdl>
<!-- Input is not XML schema -->
<xmlschema>false</xmlschema>
<!-- The WSDL file that you saved earlier -->
<schemaFiles>horarios.wsdl</schemaFiles>
<!-- The location of the WSDL file -->
<schemaDirectory>${project.basedir}/src/main/resources</schemaDirectory>
<!-- The output directory to store the generated Java files -->
<outputDirectory>${project.basedir}/src/main/java</outputDirectory>
<!-- Don't clear output directory …Run Code Online (Sandbox Code Playgroud) 我从Spring Framework开始做对象关系映射过程,但我不确定Spring 4是否有隐式ORM或只是使用其他ORM框架(如Hibernate,iBatis等).
请帮我知道.我发现一些回复表明Spring有一个ORM而另一些则反其道而行之.
java ×4
spring ×3
spring-mvc ×2
web-services ×2
glassfish ×1
hibernate ×1
maven ×1
orm ×1
soap ×1
wsdl ×1