- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
这在某种程度上是由 spring-boot-starter-jersey 附带的 tomcat-embed-core 版本 8.5.4 引起的。它会在所有集成测试中生成如下所示的错误。只有当我覆盖 pom 以使用 tomcat-embed-core 版本 8.0.36 时它才会起作用。奇怪的是,这是我得到的唯一错误信息。
java.lang.NullPointerException: null
at org.apache.catalina.authenticator.AuthenticatorBase.getJaspicProvider(AuthenticatorBase.java:1140)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:431)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:349)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:1110)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:785)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1425)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
这是我的依赖树:
[INFO] --- maven-dependency-plugin:2.10:tree (default-cli) @ sample-services ---
[INFO] com.sample:sample-services:jar:1.0.0-SNAPSHOT
[INFO] +- com.sample:sample-customer:jar:1.0.0-SNAPSHOT:compile
[INFO] | +- com.sample:sample-core:jar:1.0.0-SNAPSHOT:compile
[INFO] | | +- org.springframework.boot:spring-boot-starter-data-jpa:jar:1.4.0.RELEASE:compile
[INFO] | | | +- org.springframework.boot:spring-boot-starter-aop:jar:1.4.0.RELEASE:compile
[INFO] | | | | \- org.aspectj:aspectjweaver:jar:1.8.9:compile
[INFO] | | | +- org.springframework.boot:spring-boot-starter-jdbc:jar:1.4.0.RELEASE:compile
[INFO] | | | | +- org.apache.tomcat:tomcat-jdbc:jar:8.5.4:compile
[INFO] | | | | | \- org.apache.tomcat:tomcat-juli:jar:8.5.4:compile
[INFO] | | | | \- org.springframework:spring-jdbc:jar:4.3.2.RELEASE:compile
[INFO] | | | +- org.hibernate:hibernate-core:jar:5.0.9.Final:compile
[INFO] | | | | +- org.hibernate.javax.persistence:hibernate-jpa-2.1-api:jar:1.0.0.Final:compile
[INFO] | | | | +- antlr:antlr:jar:2.7.7:compile
[INFO] | | | | +- org.jboss:jandex:jar:2.0.0.Final:compile
[INFO] | | | | +- dom4j:dom4j:jar:1.6.1:compile
[INFO] | | | | | \- xml-apis:xml-apis:jar:1.4.01:compile
[INFO] | | | | \- org.hibernate.common:hibernate-commons-annotations:jar:5.0.1.Final:compile
[INFO] | | | +- org.hibernate:hibernate-entitymanager:jar:5.0.9.Final:compile
[INFO] | | | +- javax.transaction:javax.transaction-api:jar:1.2:compile
[INFO] | | | +- org.springframework.data:spring-data-jpa:jar:1.10.2.RELEASE:compile
[INFO] | | | | \- org.springframework:spring-orm:jar:4.3.2.RELEASE:compile
[INFO] | | | \- org.springframework:spring-aspects:jar:4.3.2.RELEASE:compile
[INFO] | | +- org.springframework.boot:spring-boot-starter-logging:jar:1.4.0.RELEASE:compile
[INFO] | | | +- ch.qos.logback:logback-classic:jar:1.1.7:compile
[INFO] | | | | \- ch.qos.logback:logback-core:jar:1.1.7:compile
[INFO] | | | +- org.slf4j:jcl-over-slf4j:jar:1.7.21:compile
[INFO] | | | +- org.slf4j:jul-to-slf4j:jar:1.7.21:compile
[INFO] | | | \- org.slf4j:log4j-over-slf4j:jar:1.7.21:compile
[INFO] | | +- commons-collections:commons-collections:jar:3.2.2:compile
[INFO] | | +- com.h2database:h2:jar:1.4.192:compile
[INFO] | | +- org.postgresql:postgresql:jar:9.4.1209.jre7:compile
[INFO] | | +- javax:javaee-api:jar:7.0:compile
[INFO] | | | \- com.sun.mail:javax.mail:jar:1.5.5:compile
[INFO] | | | \- javax.activation:activation:jar:1.1:compile
[INFO] | | +- org.apache.commons:commons-lang3:jar:3.4:compile
[INFO] | | +- commons-codec:commons-codec:jar:1.10:compile
[INFO] | | +- org.apache.httpcomponents:httpcore:jar:4.4.5:compile
[INFO] | | +- org.joda:joda-money:jar:0.10.0:compile
[INFO] | | \- com.sun.jna:jna:jar:3.0.9:compile
[INFO] | +- org.springframework.boot:spring-boot-starter-data-elasticsearch:jar:1.4.0.RELEASE:compile
[INFO] | | \- org.springframework.data:spring-data-elasticsearch:jar:2.0.2.RELEASE:compile
[INFO] | | +- org.springframework:spring-tx:jar:4.3.2.RELEASE:compile
[INFO] | | +- org.springframework.data:spring-data-commons:jar:1.12.2.RELEASE:compile
[INFO] | | +- commons-lang:commons-lang:jar:2.6:compile
[INFO] | | \- org.elasticsearch:elasticsearch:jar:2.3.4:compile
[INFO] | | +- org.apache.lucene:lucene-core:jar:5.5.0:compile
[INFO] | | +- org.apache.lucene:lucene-backward-codecs:jar:5.5.0:compile
[INFO] | | +- org.apache.lucene:lucene-analyzers-common:jar:5.5.0:compile
[INFO] | | +- org.apache.lucene:lucene-queries:jar:5.5.0:compile
[INFO] | | +- org.apache.lucene:lucene-memory:jar:5.5.0:compile
[INFO] | | +- org.apache.lucene:lucene-highlighter:jar:5.5.0:compile
[INFO] | | +- org.apache.lucene:lucene-queryparser:jar:5.5.0:compile
[INFO] | | | \- org.apache.lucene:lucene-sandbox:jar:5.5.0:compile
[INFO] | | +- org.apache.lucene:lucene-suggest:jar:5.5.0:compile
[INFO] | | | \- org.apache.lucene:lucene-misc:jar:5.5.0:compile
[INFO] | | +- org.apache.lucene:lucene-join:jar:5.5.0:compile
[INFO] | | | \- org.apache.lucene:lucene-grouping:jar:5.5.0:compile
[INFO] | | +- org.apache.lucene:lucene-spatial:jar:5.5.0:compile
[INFO] | | | +- org.apache.lucene:lucene-spatial3d:jar:5.5.0:compile
[INFO] | | | \- com.spatial4j:spatial4j:jar:0.5:compile
[INFO] | | +- org.elasticsearch:securesm:jar:1.0:compile
[INFO] | | +- com.carrotsearch:hppc:jar:0.7.1:compile
[INFO] | | +- org.joda:joda-convert:jar:1.2:compile
[INFO] | | +- com.fasterxml.jackson.dataformat:jackson-dataformat-smile:jar:2.8.1:compile
[INFO] | | +- com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:jar:2.8.1:compile
[INFO] | | +- io.netty:netty:jar:3.10.5.Final:compile
[INFO] | | +- com.ning:compress-lzf:jar:1.0.2:compile
[INFO] | | +- com.tdunning:t-digest:jar:3.0:compile
[INFO] | | +- org.hdrhistogram:HdrHistogram:jar:2.1.6:compile
[INFO] | | +- commons-cli:commons-cli:jar:1.3.1:compile
[INFO] | | \- com.twitter:jsr166e:jar:1.1.0:compile
[INFO] | +- com.google.guava:guava:jar:19.0:compile
[INFO] | +- org.apache.httpcomponents:httpclient:jar:4.5.2:compile
[INFO] | +- commons-httpclient:commons-httpclient:jar:3.1:compile
[INFO] | +- commons-io:commons-io:jar:2.5:compile
[INFO] | +- net.sf.uadetector:uadetector-core:jar:0.9.22:compile
[INFO] | | +- net.sf.qualitycheck:quality-check:jar:1.3:compile
[INFO] | | +- com.google.code.findbugs:jsr305:jar:2.0.3:compile
[INFO] | | \- javax.annotation:jsr250-api:jar:1.0:compile
[INFO] | +- net.sf.uadetector:uadetector-resources:jar:2014.10:compile
[INFO] | \- com.fasterxml.jackson.datatype:jackson-datatype-jsr310:jar:2.8.1:compile
[INFO] +- com.sample:sample-messaging:jar:1.0.0-SNAPSHOT:compile
[INFO] | +- com.amazonaws:aws-java-sdk-sns:jar:1.11.24:compile
[INFO] | \- com.amazonaws:aws-java-sdk-sqs:jar:1.11.24:compile
[INFO] +- org.springframework.boot:spring-boot-starter-jersey:jar:1.4.0.RELEASE:compile
[INFO] | +- org.springframework.boot:spring-boot-starter:jar:1.4.0.RELEASE:compile
[INFO] | | \- org.yaml:snakeyaml:jar:1.17:compile
[INFO] | +- org.springframework.boot:spring-boot-starter-tomcat:jar:1.4.0.RELEASE:compile
[INFO] | | +- org.apache.tomcat.embed:tomcat-embed-core:jar:8.5.4:compile
[INFO] | | +- org.apache.tomcat.embed:tomcat-embed-el:jar:8.5.4:compile
[INFO] | | \- org.apache.tomcat.embed:tomcat-embed-websocket:jar:8.5.4:compile
[INFO] | +- org.springframework.boot:spring-boot-starter-validation:jar:1.4.0.RELEASE:compile
[INFO] | +- org.springframework:spring-web:jar:4.3.2.RELEASE:compile
[INFO] | | +- org.springframework:spring-aop:jar:4.3.2.RELEASE:compile
[INFO] | | +- org.springframework:spring-beans:jar:4.3.2.RELEASE:compile
[INFO] | | \- org.springframework:spring-context:jar:4.3.2.RELEASE:compile
[INFO] | +- org.glassfish.jersey.core:jersey-server:jar:2.23.1:compile
[INFO] | | +- org.glassfish.jersey.core:jersey-client:jar:2.23.1:compile
[INFO] | | +- org.glassfish.jersey.media:jersey-media-jaxb:jar:2.23.1:compile
[INFO] | | +- javax.annotation:javax.annotation-api:jar:1.2:compile
[INFO] | | +- org.glassfish.hk2:hk2-api:jar:2.4.0-b34:compile
[INFO] | | | +- org.glassfish.hk2:hk2-utils:jar:2.4.0-b34:compile
[INFO] | | | \- org.glassfish.hk2.external:aopalliance-repackaged:jar:2.4.0-b34:compile
[INFO] | | \- org.glassfish.hk2:hk2-locator:jar:2.4.0-b34:compile
[INFO] | | \- org.javassist:javassist:jar:3.20.0-GA:compile
[INFO] | +- org.glassfish.jersey.containers:jersey-container-servlet-core:jar:2.23.1:compile
[INFO] | +- org.glassfish.jersey.containers:jersey-container-servlet:jar:2.23.1:compile
[INFO] | +- org.glassfish.jersey.ext:jersey-spring3:jar:2.23.1:compile
[INFO] | | +- org.glassfish.hk2:hk2:jar:2.4.0-b34:compile
[INFO] | | | +- org.glassfish.hk2:config-types:jar:2.4.0-b34:compile
[INFO] | | | +- org.glassfish.hk2:hk2-core:jar:2.4.0-b34:compile
[INFO] | | | +- org.glassfish.hk2:hk2-config:jar:2.4.0-b34:compile
[INFO] | | | +- org.glassfish.hk2:hk2-runlevel:jar:2.4.0-b34:compile
[INFO] | | | \- org.glassfish.hk2:class-model:jar:2.4.0-b34:compile
[INFO] | | | \- org.glassfish.hk2.external:asm-all-repackaged:jar:2.4.0-b34:compile
[INFO] | | \- org.glassfish.hk2:spring-bridge:jar:2.4.0-b34:compile
[INFO] | \- org.glassfish.jersey.media:jersey-media-json-jackson:jar:2.23.1:compile
[INFO] | +- org.glassfish.jersey.ext:jersey-entity-filtering:jar:2.23.1:compile
[INFO] | +- com.fasterxml.jackson.jaxrs:jackson-jaxrs-base:jar:2.8.1:compile
[INFO] | \- com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:jar:2.8.1:compile
[INFO] | \- com.fasterxml.jackson.module:jackson-module-jaxb-annotations:jar:2.8.1:compile
[INFO] +- com.fasterxml.jackson.core:jackson-databind:jar:2.8.1:compile
[INFO] | \- com.fasterxml.jackson.core:jackson-core:jar:2.8.1:compile
[INFO] +- com.fasterxml.jackson.core:jackson-annotations:jar:2.8.1:compile
[INFO] +- org.springframework.boot:spring-boot-starter-web:jar:1.4.0.RELEASE:compile
[INFO] | +- org.hibernate:hibernate-validator:jar:5.2.4.Final:compile
[INFO] | | +- org.jboss.logging:jboss-logging:jar:3.3.0.Final:compile
[INFO] | | \- com.fasterxml:classmate:jar:1.3.1:compile
[INFO] | \- org.springframework:spring-webmvc:jar:4.3.2.RELEASE:compile
[INFO] | \- org.springframework:spring-expression:jar:4.3.2.RELEASE:compile
[INFO] +- com.amazonaws:aws-java-sdk-s3:jar:1.11.24:compile
[INFO] | +- com.amazonaws:aws-java-sdk-kms:jar:1.11.24:compile
[INFO] | \- com.amazonaws:aws-java-sdk-core:jar:1.11.24:compile
[INFO] | +- commons-logging:commons-logging:jar:1.1.3:compile
[INFO] | +- com.fasterxml.jackson.dataformat:jackson-dataformat-cbor:jar:2.8.1:compile
[INFO] | \- joda-time:joda-time:jar:2.9.4:compile
[INFO] +- com.wordnik:swagger-jersey2-jaxrs_2.10:jar:1.3.13:compile
[INFO] | +- com.wordnik:swagger-jaxrs_2.10:jar:1.3.13:compile
[INFO] | | +- com.wordnik:swagger-core_2.10:jar:1.3.13:compile
[INFO] | | | +- com.fasterxml.jackson.module:jackson-module-scala_2.10:jar:2.4.1:compile
[INFO] | | | | \- com.thoughtworks.paranamer:paranamer:jar:2.6:compile
[INFO] | | | +- com.fasterxml.jackson.module:jackson-module-jsonSchema:jar:2.4.1:compile
[INFO] | | | +- com.wordnik:swagger-annotations:jar:1.3.13:compile
[INFO] | | | +- org.json4s:json4s-ext_2.10:jar:3.2.11:compile
[INFO] | | | +- org.json4s:json4s-native_2.10:jar:3.2.11:compile
[INFO] | | | | \- org.json4s:json4s-core_2.10:jar:3.2.11:compile
[INFO] | | | | +- org.json4s:json4s-ast_2.10:jar:3.2.11:compile
[INFO] | | | | \- org.scala-lang:scalap:jar:2.10.0:compile
[INFO] | | | | \- org.scala-lang:scala-compiler:jar:2.10.0:compile
[INFO] | | | \- org.json4s:json4s-jackson_2.10:jar:3.2.11:compile
[INFO] | | \- org.reflections:reflections:jar:0.9.9:compile
[INFO] | | \- com.google.code.findbugs:annotations:jar:2.0.1:compile
[INFO] | \- org.glassfish.jersey.media:jersey-media-multipart:jar:2.1:compile
[INFO] | \- org.jvnet.mimepull:mimepull:jar:1.8:compile
[INFO] +- org.glassfish.jersey.ext:jersey-bean-validation:jar:2.23.1:compile
[INFO] | +- org.glassfish.hk2.external:javax.inject:jar:2.4.0-b34:compile
[INFO] | +- org.glassfish.jersey.core:jersey-common:jar:2.23.1:compile
[INFO] | | +- org.glassfish.jersey.bundles.repackaged:jersey-guava:jar:2.23.1:compile
[INFO] | | \- org.glassfish.hk2:osgi-resource-locator:jar:1.0.1:compile
[INFO] | +- javax.validation:validation-api:jar:1.1.0.Final:compile
[INFO] | +- javax.el:javax.el-api:jar:2.2.4:compile
[INFO] | +- org.glassfish.web:javax.el:jar:2.2.4:compile
[INFO] | \- javax.ws.rs:javax.ws.rs-api:jar:2.0.1:compile
[INFO] +- com.jayway.restassured:rest-assured:jar:2.9.0:test
[INFO] | +- org.codehaus.groovy:groovy:jar:2.4.7:test
[INFO] | +- org.codehaus.groovy:groovy-xml:jar:2.4.7:test
[INFO] | +- org.apache.httpcomponents:httpmime:jar:4.5.2:test
[INFO] | +- org.hamcrest:hamcrest-core:jar:1.3:test
[INFO] | +- org.hamcrest:hamcrest-library:jar:1.3:test
[INFO] | +- org.ccil.cowan.tagsoup:tagsoup:jar:1.2.1:test
[INFO] | +- com.jayway.restassured:json-path:jar:2.9.0:test
[INFO] | | +- org.codehaus.groovy:groovy-json:jar:2.4.7:test
[INFO] | | \- com.jayway.restassured:rest-assured-common:jar:2.9.0:test
[INFO] | \- com.jayway.restassured:xml-path:jar:2.9.0:test
[INFO] +- com.jayway.jsonpath:json-path:jar:2.2.0:compile
[INFO] | +- net.minidev:json-smart:jar:2.2.1:compile
[INFO] | | \- net.minidev:accessors-smart:jar:1.1:compile
[INFO] | | \- org.ow2.asm:asm:jar:5.0.3:compile
[INFO] | \- org.slf4j:slf4j-api:jar:1.7.21:compile
[INFO] +- org.springframework.boot:spring-boot-starter-test:jar:1.4.0.RELEASE:test
[INFO] | +- org.springframework.boot:spring-boot-test:jar:1.4.0.RELEASE:test
[INFO] | +- org.springframework.boot:spring-boot-test-autoconfigure:jar:1.4.0.RELEASE:test
[INFO] | +- junit:junit:jar:4.12:test
[INFO] | +- org.mockito:mockito-core:jar:1.10.19:test
[INFO] | | \- org.objenesis:objenesis:jar:2.1:test
[INFO] | +- org.skyscreamer:jsonassert:jar:1.3.0:test
[INFO] | +- org.springframework:spring-core:jar:4.3.2.RELEASE:compile
[INFO] | \- org.springframework:spring-test:jar:4.3.2.RELEASE:test
[INFO] +- org.assertj:assertj-core:jar:3.2.0:compile
[INFO] +- org.springframework.boot:spring-boot-configuration-processor:jar:1.4.0.RELEASE:compile
[INFO] | \- org.json:json:jar:20140107:compile
[INFO] +- org.neo4j:neo4j-cypher-compiler-2.2:jar:2.2.5:compile
[INFO] | +- org.scala-lang:scala-library:jar:2.10.5:compile
[INFO] | +- org.scala-lang:scala-reflect:jar:2.10.5:compile
[INFO] | +- org.parboiled:parboiled-scala_2.10:jar:1.1.7:compile
[INFO] | | \- org.parboiled:parboiled-core:jar:1.1.7:compile
[INFO] | \- com.googlecode.concurrentlinkedhashmap:concurrentlinkedhashmap-lru:jar:1.4:compile
[INFO] \- org.springframework.boot:spring-boot-devtools:jar:1.4.0.RELEASE:compile
[INFO] +- org.springframework.boot:spring-boot:jar:1.4.0.RELEASE:compile
[INFO] \- org.springframework.boot:spring-boot-autoconfigure:jar:1.4.0.RELEASE:compile
这是我的应用程序类:
@EntityScan(basePackageClasses = { Application.class, Jsr310JpaConverters.class })
@EnableScheduling
@EnableAsync
@SpringBootApplication(scanBasePackages = "com.sample")
public class Application extends Loggable implements AsyncConfigurer {
/**
* This forces the SNS topics to be created and/or linked.
*/
@Autowired
@SuppressWarnings("all")
private TopicFactory topicFactory;
/**
* It all begins here.
*/
public static void main(String[] args) throws Exception {
SpringApplication application = new SpringApplication(Application.class);
application.setBanner(new SampleBanner());
application.run(args);
}
/**
* Returns the @Async executor.
*/
@Override
public Executor getAsyncExecutor() {
ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
executor.setCorePoolSize(4);
executor.setMaxPoolSize(4);
executor.setQueueCapacity(0);
executor.setThreadNamePrefix("Async-");
executor.initialize();
return executor;
}
/**
* Returns the uncaught exception handler for @Async operations.
*/
@Override
public AsyncUncaughtExceptionHandler getAsyncUncaughtExceptionHandler() {
return (e, method, params) -> log.error("Uncaught async error", e);
}
}
如果有人能指出从哪里开始或导致它失败的原因,那将有很大帮助。
最佳答案
可能的修复:
1) 将 authConfigFactory 设置为 Tomcat 8.5 使用的默认 AuthConfigFactory 实现(示例基本实现):
package com.example;
import org.apache.catalina.authenticator.jaspic.AuthConfigFactoryImpl;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import javax.security.auth.message.config.AuthConfigFactory;
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
if (AuthConfigFactory.getFactory() == null) {
AuthConfigFactory.setFactory(new AuthConfigFactoryImpl());
}
SpringApplication.run(DemoApplication.class, args);
}
}
或
2) 从类路径中删除重复的 AuthConfigFactory
类。在我的例子中,同一个类有两种不同的实现:
org.apache.tomcat.embed/tomcat-embed-core/8.5.4/tomcat-embed-core-8.5.4.jar!/javax/security/auth/message/config/AuthConfigFactory.class
javax/javaee-api/7.0/javaee-api-7.0.jar!/javax/security/auth/message/config/AuthConfigFactory.class
javaee-api-7.0.jar
有自己的 AuthConfigFactory
实现,它与 Tomcat 8.5 不完全兼容并导致 NullPointerException
(在Tomcat 的版本有一个常量,它定义了默认的 jaspic 实现类)从您的 gradle/mvn 项目中删除 javaee-api
依赖项(或任何其他包含不同 AuthConfigFactory 实现的)(如果可以的话)
或
3) 将 Tomcat 降级到 8.0 或 7.0:
http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#howto-use-tomcat-7
解释:
该问题与在 Spring Boot 从 1.3.x 升级到 1.4 期间进行的 Tomcat 升级(从 8.0.x 到 8.5.x)有关。问题是 Tomcat 8.5 引入了 jaspic 支持 (https://tomcat.apache.org/tomcat-8.5-doc/config/jaspic.html) 并提供了它自己的 AuthConfigFactory 实现。这个实现定义了默认的 jaspic auth 工厂实现:
private static final String DEFAULT_JASPI_AUTHCONFIGFACTORYIMPL =
"org.apache.catalina.authenticator.jaspic.AuthConfigFactoryImpl";
在其他实现中未定义(例如来自 javaee-api-7.0 的那个)并导致 NullPointerException
因为没有实例化 AuthConfigFactory。
关于spring - 将 Spring Boot 从 1.3.7 升级到 1.4.0 导致 AuthenticatorBase.getJaspicProvider 中出现 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38802437/
我需要将文本放在 中在一个 Div 中,在另一个 Div 中,在另一个 Div 中。所以这是它的样子: #document Change PIN
奇怪的事情发生了。 我有一个基本的 html 代码。 html,头部, body 。(因为我收到了一些反对票,这里是完整的代码) 这是我的CSS: html { backgroun
我正在尝试将 Assets 中的一组图像加载到 UICollectionview 中存在的 ImageView 中,但每当我运行应用程序时它都会显示错误。而且也没有显示图像。 我在ViewDidLoa
我需要根据带参数的 perl 脚本的输出更改一些环境变量。在 tcsh 中,我可以使用别名命令来评估 perl 脚本的输出。 tcsh: alias setsdk 'eval `/localhome/
我使用 Windows 身份验证创建了一个新的 Blazor(服务器端)应用程序,并使用 IIS Express 运行它。它将显示一条消息“Hello Domain\User!”来自右上方的以下 Ra
这是我的方法 void login(Event event);我想知道 Kotlin 中应该如何 最佳答案 在 Kotlin 中通配符运算符是 * 。它指示编译器它是未知的,但一旦知道,就不会有其他类
看下面的代码 for story in book if story.title.length < 140 - var story
我正在尝试用 C 语言学习字符串处理。我写了一个程序,它存储了一些音乐轨道,并帮助用户检查他/她想到的歌曲是否存在于存储的轨道中。这是通过要求用户输入一串字符来完成的。然后程序使用 strstr()
我正在学习 sscanf 并遇到如下格式字符串: sscanf("%[^:]:%[^*=]%*[*=]%n",a,b,&c); 我理解 %[^:] 部分意味着扫描直到遇到 ':' 并将其分配给 a。:
def char_check(x,y): if (str(x) in y or x.find(y) > -1) or (str(y) in x or y.find(x) > -1):
我有一种情况,我想将文本文件中的现有行包含到一个新 block 中。 line 1 line 2 line in block line 3 line 4 应该变成 line 1 line 2 line
我有一个新项目,我正在尝试设置 Django 调试工具栏。首先,我尝试了快速设置,它只涉及将 'debug_toolbar' 添加到我的已安装应用程序列表中。有了这个,当我转到我的根 URL 时,调试
在 Matlab 中,如果我有一个函数 f,例如签名是 f(a,b,c),我可以创建一个只有一个变量 b 的函数,它将使用固定的 a=a1 和 c=c1 调用 f: g = @(b) f(a1, b,
我不明白为什么 ForEach 中的元素之间有多余的垂直间距在 VStack 里面在 ScrollView 里面使用 GeometryReader 时渲染自定义水平分隔线。 Scrol
我想知道,是否有关于何时使用 session 和 cookie 的指南或最佳实践? 什么应该和什么不应该存储在其中?谢谢! 最佳答案 这些文档很好地了解了 session cookie 的安全问题以及
我在 scipy/numpy 中有一个 Nx3 矩阵,我想用它制作一个 3 维条形图,其中 X 轴和 Y 轴由矩阵的第一列和第二列的值、高度确定每个条形的 是矩阵中的第三列,条形的数量由 N 确定。
假设我用两种不同的方式初始化信号量 sem_init(&randomsem,0,1) sem_init(&randomsem,0,0) 现在, sem_wait(&randomsem) 在这两种情况下
我怀疑该值如何存储在“WORD”中,因为 PStr 包含实际输出。? 既然Pstr中存储的是小写到大写的字母,那么在printf中如何将其给出为“WORD”。有人可以吗?解释一下? #include
我有一个 3x3 数组: var my_array = [[0,1,2], [3,4,5], [6,7,8]]; 并想获得它的第一个 2
我意识到您可以使用如下方式轻松检查焦点: var hasFocus = true; $(window).blur(function(){ hasFocus = false; }); $(win
我是一名优秀的程序员,十分优秀!