我正在尝试使用Spring Security进行非常简单的基本身份验证.我已正确配置命名空间,服务器中没有例外.在我的"servlet.xml"中,我获得了Spring Security的下一个:
<security:http>
<security:http-basic></security:http-basic>
<security:intercept-url method="POST" pattern="/**" access="ROLE_USER" />
</security:http>
<security:authentication-manager alias="authenticationManager">
<security:authentication-provider>
<security:user-service>
<security:user name="cucu" password="tas" authorities="ROLE_USER" />
<security:user name="bob" password="bobspassword" authorities="ROLE_USER" />
</security:user-service>
</security:authentication-provider>
</security:authentication-manager>
Run Code Online (Sandbox Code Playgroud)
它几乎都是完美的:POST
没有提示任何登录表单的POST
方法,并且方法提示它.问题是,那也不是cucu
,也bob
不能登录那里.任何人都可以看到我做错了什么?
提前致谢!;-)
我在我的应用程序中实现了SAF(存储访问框架).我正在三星nexus 10上运行我的应用程序.它安装了Dropbox.但我无法在我的应用程序中看到dropbox.所以我的问题是:
Dropbox是否注册到SAF?如果是,还有别的东西,我需要在我的应用程序中将dropbox作为根文件夹之一提供吗?
目前,在我的应用中,我看到 - Google云端硬盘,图片,下载为我的根文件夹
使用设计模式会使java代码变慢吗?如果我使用额外的接口和语法结构(如类包装),我会得到很好的组织,但代码速度慢或不会使我的代码显着减慢?
我正在尝试使用log4j2从使用FileAppender切换到RollingFileAppender(与beta3和beta4 jar一起发生).
我把它配置为:
<RollingFile name="RollingFile" fileName="${logdir}/${filename}"
filePattern="${logdir}/app-%d{yyyy-MM-dd-hh-mm-ss}_%i.log" >
<PatternLayout>
<pattern>%d %p %C{1.} [%t] %m%n</pattern>
</PatternLayout>
<Policies>
<OnStartupTriggeringPolicy/>
</Policies>
<DefaultRolloverStrategy max="20"/>
</RollingFile>
...
<loggers>
<root level="ERROR">
<appender-ref ref="RollingFile"/>
<appender-ref ref="STDOUT"/>
</root>
...
Run Code Online (Sandbox Code Playgroud)
在代码中,我试图以这种方式获取记录器:
Logger logger = LogManager.getLogger(this.getClass());
Run Code Online (Sandbox Code Playgroud)
但是当我运行它时我得到了这个异常:
2013-02-01 17:56:54,773 ERROR Unable to invoke method createAppender in class org.apache.logging.log4j.core.appender.RollingFileAppender for element RollingFile java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.logging.log4j.core.config.BaseConfiguration.createPluginObject(BaseConfiguration.java:723) at org.apache.logging.log4j.core.config.BaseConfiguration.createConfiguration(BaseConfiguration.java:489) at org.apache.logging.log4j.core.config.BaseConfiguration.createConfiguration(BaseConfiguration.java:481) at org.apache.logging.log4j.core.config.BaseConfiguration.doConfigure(BaseConfiguration.java:162) at org.apache.logging.log4j.core.config.BaseConfiguration.start(BaseConfiguration.java:120) at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:271) at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:287) at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:139) …
我正在尝试在Robotium中运行一些自动化测试.我的应用程序中有以下代码,用于设置选项菜单:
public boolean onCreateOptionsMenu(com.actionbarsherlock.view.Menu menu) {
com.actionbarsherlock.view.MenuInflater inflater = getSupportMenuInflater();
inflater.inflate(R.layout.logoutmenu, menu);
return super.onCreateOptionsMenu(menu);
}
Run Code Online (Sandbox Code Playgroud)
我尝试使用代码单击Robotium中的菜单:
solo.sendKey(Solo.MENU);
solo.clickOnView(solo.getView(R.id.share)); //share is the id of the menu item
Run Code Online (Sandbox Code Playgroud)
但是我的测试因错误而失败:
View is null and therefore cannot be clicked.
Run Code Online (Sandbox Code Playgroud)
我也尝试使用下面的代码也失败了:
solo.clickOnView(solo.getView(R.id.logoutmenu));
solo.clickOnMenuItem("Share My Artists");
Run Code Online (Sandbox Code Playgroud) 抱歉英语不好.我得到了我的项目spring-boot 1.1.8
,Encountered Exception No CurrentSessionContext configured
,然后我做了一些搜索,添加属性<property name="hibernate.current_session_context_class">org.hibernate.context.ThreadLocalSessionContext</property>
可以解决这个问题,但是
如何使用java类配置此属性?
更新:我改为Hibernate4.x方式来定义SessionFactory但仍然遇到同样的错误,请帮忙!
使用java 1.8
和speing boot 1.1.8
这是我的pom.xml
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>1.8</java.version>
<main.basedir>${basedir}/../..</main.basedir>
<m2eclipse.wtp.contextRoot>../</m2eclipse.wtp.contextRoot>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>1.1.8.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
Run Code Online (Sandbox Code Playgroud)
这是我的服务和控制器
@AutoWried
SessionFactory sessionFactory;
@Service
@Transactional
public class UserServiceImpl implements UserService { …
Run Code Online (Sandbox Code Playgroud) 我在Eclipse中有一个Maven项目,现在我需要添加数据库连接.我的教科书在Maven中完成了所有json教程.现在,在本章的JDBC中,他们使用的是SpringBoot.
我可以将项目转换为SpringBoot吗?或者启动SpringBoot并导入我以前的Maven类.
我可以在一个Tomcat上运行两个(或更多)Spring启动应用程序吗?
我有两个应用程序打包为war
文件,我想在一个Tomcat服务器上运行它们.但是,当我部署它们时,我得到以下异常:
org.springframework.jmx.export.UnableToRegisterMBeanException:
Unable to register MBean [org.springframework.boot.actuate.endpoint.jmx.DataEndpointMBean@2361d8ee] with key 'dumpEndpoint';
nested exception is javax.management.InstanceAlreadyExistsException: org.springframework.boot:type=Endpoint,name=dumpEndpoint
Run Code Online (Sandbox Code Playgroud)
每个Spring-boot应用程序注册的默认端点(如/ health等)都会发生冲突.是否有一些解决方法或不可能实现此设置?
谢谢你的回复!
每当启动应用程序spring boot时,我都会收到以下错误.
应用程序未能启动
描述:
com.base.model.AbstractDao中的字段会话需要一个无法找到的类型为'org.hibernate.SessionFactory'的bean.
行动:
考虑在配置中定义类型为'org.hibernate.SessionFactory'的bean.
我添加了我的应用程序的实现:
的pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>demo</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.2.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- Spring -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-orm</artifactId>
<version>4.2.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!-- Hibernate dependency --> …
Run Code Online (Sandbox Code Playgroud) 在运行gradlew测试时,这只是一个错误:
e: java.rmi.UnmarshalException: Error unmarshaling return header; nested exception is:
java.io.EOFException
at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:236)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:161)
at java.rmi.server.RemoteObjectInvocationHandler.invokeRemoteMethod(RemoteObjectInvocationHandler.java:227)
at java.rmi.server.RemoteObjectInvocationHandler.invoke(RemoteObjectInvocationHandler.java:179)
at com.sun.proxy.$Proxy112.clearJarCache(Unknown Source)
at org.jetbrains.kotlin.compilerRunner.GradleCompilerRunner.compileWithDaemon(GradleKotlinCompilerRunner.kt:216)
at org.jetbrains.kotlin.compilerRunner.GradleCompilerRunner.compileWithDaemonOrFallback(GradleKotlinCompilerRunner.kt:156)
at org.jetbrains.kotlin.compilerRunner.GradleCompilerRunner.compileWithDaemonOrFallback(GradleKotlinCompilerRunner.kt:52)
at org.jetbrains.kotlin.compilerRunner.KotlinCompilerRunner.runCompiler(KotlinCompilerRunner.kt:127)
at org.jetbrains.kotlin.compilerRunner.GradleCompilerRunner.runJvmCompiler(GradleKotlinCompilerRunner.kt:107)
at org.jetbrains.kotlin.gradle.tasks.KotlinCompile.callCompiler$kotlin_gradle_plugin(Tasks.kt:326)
at org.jetbrains.kotlin.gradle.tasks.KotlinCompile.callCompiler$kotlin_gradle_plugin(Tasks.kt:231)
at org.jetbrains.kotlin.gradle.tasks.AbstractKotlinCompile.execute(Tasks.kt:203)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$IncrementalTaskAction.doExecute(DefaultTaskClassInfoStore.java:179)
at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:135)
at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:122)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:121)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:110)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:62)
at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:97)
at …
Run Code Online (Sandbox Code Playgroud) java ×6
spring-boot ×4
android ×2
maven ×2
spring ×2
deployment ×1
dropbox ×1
eclipse ×1
gradle ×1
hibernate ×1
kotlin ×1
log4j2 ×1
performance ×1
robotium ×1
tomcat ×1