小编Nit*_*mar的帖子

如何从 Angular 6 中的 HttpErrorResponse 获取正文?

我在我的 Angular 应用程序中创建了一个 REST API 调用来下载一个文件。

我将 responseType 设置为 'blob' 因为我期待一个文件作为响应。

但是当服务器上没有可用的文件时,响应的错误代码为 404,即错误请求,正文中有一些消息。

但是我无法解析来自正文的错误消息,因为 HttpErrorResponse 在 error.error 中给出了一个 blob 对象

如何从错误对象而不是 blob 中获取实际主体。

还有什么方法可以配置 angular,在 api 调用成功时解析 blob 中的请求,否则解析 json 中的请求???

希望得到解决

javascript angular angular-httpclient

12
推荐指数
2
解决办法
1万
查看次数

使用maven-assembly-plugin创建超级jar时,Jersey失败了

我创建了一个maven jersey starter webapp.此外,我使用jetty插件在我的应用程序中嵌入了jetty服务器.

当我使用mvn jetty:run命令运行我的项目时,我的项目工作正常.

但是当我使用mvn clean package命令打包我的项目并运行名为jar-with-dependencies的jar文件时,项目会在从jersey资源返回json响应时抛出此异常.

严重:找不到媒体类型= application/json的MessageBodyWriter,类型=类com.nitish.freecharge.model.Count,genericType = class com.nitish.freecharge.model.Count.

这是我的pom.xml文件

http://maven.apache.org/maven-v4_0_0.xsd">

<modelVersion>4.0.0</modelVersion>

<groupId>com.nitish.freecharge</groupId>
<artifactId>wordcount</artifactId>
<packaging>war</packaging>
<version>2.0</version>
<name>wordcount</name>

<build>
    <finalName>wordcount</finalName>
    <resources>
        <resource>
            <directory>src/main/java</directory>
        </resource>
        <resource>
            <directory>src/main/resources</directory>
        </resource>
        <resource>
            <directory>src/main/webapp</directory>
        </resource>
    </resources>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.5.1</version>
            <inherited>true</inherited>
            <configuration>
                <source>1.7</source>
                <target>1.7</target>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.eclipse.jetty</groupId>
            <artifactId>jetty-maven-plugin</artifactId>
            <version>9.3.0.v20150612</version>
            <configuration>
                <scanIntervalSeconds>5</scanIntervalSeconds>
                <webApp>
                    <contextPath>/wordcount</contextPath>
                </webApp>
                <httpConnector>
                    <!--host>localhost</host -->
                    <port>9999</port>
                </httpConnector>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>2.4</version>
            <executions>
                <execution>
                    <id>package-jar</id>
                    <phase>package</phase>
                    <goals>
                        <goal>jar</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-assembly-plugin</artifactId>
            <version>2.6</version> …
Run Code Online (Sandbox Code Playgroud)

jersey embedded-jetty maven jersey-2.0 jar-with-dependencies

9
推荐指数
1
解决办法
1543
查看次数

提交失败,但步骤执行数据已更新

当 Spring Batch 尝试提交记录时,我收到“提交失败,而步骤执行数据已更新”错误。任何帮助将不胜感激。我正在使用 HIbernate JPA 。

它适用于较少数量的记录。当记录计数很高时抛出错误。

堆栈跟踪:

2016-01-20 08:49:45 INFO  TaskletStep:359 - Commit failed while step execution data was already updated. Reverting to old version.
2016-01-20 08:49:45 ERROR TaskletStep:370 - Rolling back with transaction in unknown state
2016-01-20 08:49:45 ERROR AbstractStep:225 - Encountered an error executing  step uploadFiles in job fileUploadJob
org.springframework.transaction.TransactionSystemException: Could not commit JPA transaction; nested exception is javax.persistence.RollbackException:  Transaction marked as rollbackOnly
at org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:524)
at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:757)
at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:726)
Run Code Online (Sandbox Code Playgroud)

java jpa spring-batch spring-boot

5
推荐指数
1
解决办法
1万
查看次数

Spring Boot中函数调用后如何释放所有缓存数据

我正在使用 Spring Boot 2.0.4.RELEASE 版本,仅使用默认缓存提供程序启用缓存,不使用外部缓存提供程序。

我已经安排了一批在每天的特定时间运行。在其运行期间,涉及数据访问的某些方法调用被缓存并且工作正常。

现在我想在下次功能启动之前在预定时间释放所有缓存的项目。

我无法实现此功能。你们能否指导我一些想法或如何实施它的方法。

这就是我正在努力实现的。我有一个标记为 @Configuration 的 JobExecutionListener 类。我正在使用它的 afterJob 方法来清除所有缓存。

@Configuration
@JobScope
public class JobTwoExecutionListener implements JobExecutionListener {

    private static final Logger logger = LoggerFactory.getLogger(JobTwoExecutionListener.class);

    @Autowired
    private CacheManager cacheManager;

    @Override
    public void beforeJob(JobExecution jobExecution) {
        final String methodName = "beforeJob() : ";
        logger.info(methodName + "called");

        if(cacheManager == null) return;

        logger.info(methodName + "CacheManager FOUND. Listing all the caches 
        before Job Run");
        for(String name : cacheManager.getCacheNames()){
            logger.info(methodName + "CACHE_NAME BEFORE JOB " + name);
        }
    }

    @Override …
Run Code Online (Sandbox Code Playgroud)

java spring-batch spring-boot spring-cache

1
推荐指数
1
解决办法
8097
查看次数