我正在使用Spring Security 3.1.授权后重定向时出现问题.它重定向到favicon 404错误.role_anonymous为favicon 添加没有帮助.
<beans:beans xmlns="http://www.springframework.org/schema/security"
xmlns:beans="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/security
http://www.springframework.org/schema/security/spring-security-3.1.xsd">
<!--To enable spring security comment this string
<http auto-config="true" security="none"/>-->
<!-- To enable spring security remove comment from this code-->
<http auto-config="true">
<intercept-url pattern="/**" access="ROLE_ADMIN"/>
<intercept-url pattern="/favicon.ico" access="ROLE_ANONYMOUS" />
</http>
<authentication-manager>
<authentication-provider>
<user-service>
<user name="hey" password="there" authorities="ROLE_ADMIN" />
</user-service>
</authentication-provider>
</authentication-manager>
</beans:beans>
Run Code Online (Sandbox Code Playgroud) 请帮我提一下建议.
我需要通过xml文件中的某个变量禁用/启用我的应用程序的spring安全性.
我的spring-security.xml文件
<beans:beans xmlns="http://www.springframework.org/schema/security"
xmlns:beans="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/security
http://www.springframework.org/schema/security/spring-security-3.1.xsd">
<http auto-config="true">
<intercept-url pattern="/*" access="ROLE_ADMIN" />
<logout logout-success-url="/mainpage" />
<login login-success-url="/mainpage" />
</http>
<authentication-manager>
<authentication-provider>
<user-service>
<user name="hey" password="there" authorities="ROLE_ADMIN" />
</user-service>
</authentication-provider>
</authentication-manager>
Run Code Online (Sandbox Code Playgroud)
怎么可能这样做?谢谢.
我正在使用ExtJS组合框.聚焦于组合框时有一个打字光标.我editable: false在创建组合框时尝试实现,但它只对chrome有帮助.
还试过clearListeners()功能,看看这是否适用于该光标 - 没有帮助,它仍然出现在FireFox和IE中.
另一个想法是disabled在组合框中设置输入字段.当我手动完成时,它有所帮助.
但是当我写下一个
Ext.get('bu-encodingcount-combobox').select('input').set({disabled:'disabled'});
它没有帮助 - 不知道,也许表达是错误的.
我在应用程序中使用log4j和spring-security,并且记录器应该在每条消息中写入带有用户名的日志.我对这一切都很陌生,有人可以提供建议或链接吗?也许有一些不同的方法可以解决这个问题?谢谢.
编辑使用spring框架3.1我的spring-security.xml是:
<beans:beans xmlns="http://www.springframework.org/schema/security"
xmlns:beans="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/security
http://www.springframework.org/schema/security/spring-security-3.1.xsd">
<http pattern="/favicon.ico" security="none" />
<http auto-config="true">
<intercept-url pattern="/**" access="ROLE_ADMIN"/>
</http>
<authentication-manager>
<authentication-provider>
<user-service>
<user name="detect_me" password="1111" authorities="ROLE_ADMIN" />
</user-service>
</authentication-provider>
</authentication-manager>
Run Code Online (Sandbox Code Playgroud)
和log4j.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j='http://jakarta.apache.org/log4j/'>
<appender name="stdout" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %p [%c] - %m%n" />
</layout>
</appender>
<appender name="R" class="org.apache.log4j.DailyRollingFileAppender">
<param name="File" value="/logs/urlbuilderweb.log"/>
<param name="DatePattern" value="'.'yyyy-MM-dd'.log'" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %p %t %c - %m%n" />
</layout>
</appender> …Run Code Online (Sandbox Code Playgroud) 我通过java创建带有数据的csv文件.我遇到了以下众所周知的问题:葡萄牙语中的字母在Excel中以错误的方式显示(通过双击打开时).
我通过UTF-16LE + BOM解决了这个问题,但是excel开始将标签识别为列分隔符而不是逗号.
所以我查找了另一个解决方案并查看了很多帖子,其中人们说只需添加UTF-8 BOM并以UTF-8编写文件就可以完成Excel 2007及更高版本的工作.我在我的工作计算机上尝试了最简单的示例,但它失败了.但是当我在家用电脑上尝试这个时,它就像一个魅力.
两台计算机都安装了相同版本的Java和操作系统Windows 7.我很困惑.有谁能说出什么会导致这种奇怪的行为?
您可以在下面看到我最简单的示例:
String filename = "D:/check/test_with_bom.csv";
FileOutputStream fos = new FileOutputStream(filename);
byte[] bom = new byte[] { (byte)0xEF, (byte)0xBB, (byte)0xBF };
fos.write(bom);
OutputStreamWriter osw = new OutputStreamWriter(fos , "UTF-8");
PrintWriter printWriter = new PrintWriter(osw);
printWriter.print("Hello,Olá,ão,ção");
printWriter.close();
Run Code Online (Sandbox Code Playgroud) 我想确保使用特定的字符串集作为参数调用mocked.例如,我有以下代码:
public class SomeLogic {
@Autowired
private SpecificService specificService;
public void action() {
Set<String> args = fillArgsMethod();
specificService.handleArgs(args);
}
}
Run Code Online (Sandbox Code Playgroud)
我目前尝试测试它是以下
@Mock
private SpecificService specificService
@InjectMocks
private SomeLogic someLogic;
@Test
public void testAction() {
someLogic.action();
verify(specificService).handleArgs(anySet());
}
Run Code Online (Sandbox Code Playgroud)
但我想确定,handleArgs()将收到我期望的确切字符串集.如何修改验证以检查是否使用set"first","second"调用handleArgs?谢谢
有没有办法在合并日期之前在github中找到PR?实际上是在日期范围内合并的PR。
找不到任何东西,感觉很奇怪,所以请向社区询问。谢谢
我正在使用extjs 4.0并且使用了一个带有queryMode"remote"的组合框.我用服务器的数据填充它.问题是来自服务器的记录数量太大,所以我认为按部件加载它们会更好.我知道有一个用于组合框的标准分页器工具,但它不方便,因为需要总记录数.问题是,有没有办法为组合框添加动态滚动?当滚动到列表底部时,我想发送下一部分记录的请求并将它们添加到列表中.我找不到合适的听众来做这件事.
UPDATED找到解决方案,它发布在答案中
在dropwizard中,我需要实现异步作业并轮询其状态。我在资源中有2个端点:
@Path("/jobs")
@Component
public class MyController {
@POST
@Produces(MediaType.APPLICATION_JSON)
public String startJob(@Valid MyRequest request) {
return 1111;
}
@GET
@Path("/{jobId}")
@Produces(MediaType.APPLICATION_JSON)
public JobStatus getJobStatus(@PathParam("id") String jobId) {
return JobStatus.READY;
}
}
Run Code Online (Sandbox Code Playgroud)
我正在考虑使用石英来开始工作,但只能一次,并且无需重复。当请求状态时,我将获得触发器状态。但是,将石英用于非预定用途的想法看起来很奇怪。有没有更好的方法呢?也许dropwizard本身提供了更好的工具?将提出任何建议。
更新:我也在看https://github.com/gresrun/jesque,但是找不到任何方法来轮询正在运行的作业的状态。
我的服务正在启动春季批处理作业。我希望能够将一些对象传递给作业,每次这个对象参数都会不同。我需要在我的 tasklet 中使用这个对象。我正在通过 JobLauncher 开始工作。就我用谷歌搜索而言,我发现 JobParameters 在这种情况下不会帮助我。我还发现很多答案都是使用 JobExecutionContext 或其他任何东西。但我想在工作开始之前注入参数对象。有可能吗?
启动工作的服务
@Service
public class MyServiceImpl implements MyService {
@Autowired
private JobLauncher jobLauncher;
@Autowired
private Job myJob;
@Override
public MyResponse startJob(InputParameter inputObject) {
try {
//Here I want to pass somehow inputObject ot JobExecution
jobLauncher.run(myJob, new JobParameters());
} catch (Exception e) {
return new MyResponse("FAILED")
}
return new MyResponse("OK");
}
}
Run Code Online (Sandbox Code Playgroud)
我的任务
@Component
@Scope("step")
public class MyTasklet implements Tasklet{
@Override
public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
InputParameter inputObject = …Run Code Online (Sandbox Code Playgroud) 使用Tomcat 6.0和Maven3。我对这一切还是陌生的,所以请有人帮我吗?
我从https://src.springframework.org/svn/spring-samples/mvc-basic/trunk/中获取了示例。
我使用pom.xml从目录执行了mvn package命令,将mvc-basic.war文件带到Tomcat的webapps目录,重新启动了tomcat并转到了localhost:8080 / mvc-basic /。
但是我得到的只是某种tomcat错误500:
exception
javax.servlet.ServletException: Servlet.init() for servlet Spring MVC Dispatcher Servlet threw exception
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:291)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
java.lang.Thread.run(Unknown Source)
root cause
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.validation.beanvalidation.LocalValidatorFactoryBean#0': Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1420)
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:580)
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:442)
org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:458)
org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:339)
org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:306)
org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:127)
javax.servlet.GenericServlet.init(GenericServlet.java:212)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:291)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
java.lang.Thread.run(Unknown Source)
root cause
java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
org.hibernate.validator.engine.ConfigurationImpl.parseValidationXml(ConfigurationImpl.java:252)
org.hibernate.validator.engine.ConfigurationImpl.buildValidatorFactory(ConfigurationImpl.java:143)
org.springframework.validation.beanvalidation.LocalValidatorFactoryBean.afterPropertiesSet(LocalValidatorFactoryBean.java:219)
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477)
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1417) …Run Code Online (Sandbox Code Playgroud)