小编Dav*_*d V的帖子

使用Spring MVC的ResponseEntity返回一个流

我有一个Spring MVC方法返回一个ResponseEntity.根据检索到的特定数据,有时需要将数据流返回给用户.其他时候它会返回除流之外的其他内容,有时还会返回重定向.我绝对希望这是一个流而不是字节数组,因为它可能很大.

目前,我使用以下代码段返回流:

HttpHeaders httpHeaders = createHttpHeaders();
IOUtils.copy(inputStream, httpServletResponse.getOutputStream());

return new ResponseEntity(httpHeaders, HttpStatus.OK);
Run Code Online (Sandbox Code Playgroud)

不幸的是,这不允许Spring HttpHeaders数据实际填充响应中的HTTP标头.这是有道理的,因为我的代码写入OutputStreamSpring之前收到的ResponseEntity.

这将是非常好的以某种方式返回一个ResponseEntity带有InputStream一个让Spring处理.它也会与我的函数的其他路径并行,我可以成功返回一个ResponseEntity.无论如何,我可以用Spring完成这个任务吗?


此外,我也尝试返回InputStreamResponseEntity只是为了看看春天会接受它.

return new ResponseEntity(inputStream, httpHeaders, HttpStatus.OK);
Run Code Online (Sandbox Code Playgroud)

但它抛出了这个异常:

org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation
Run Code Online (Sandbox Code Playgroud)

我可以通过HttpServletResponse直接设置所有内容来使我的功能工作,但我想只用Spring做到这一点.

java spring servlets spring-mvc

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

iOS 7中的单点登录(SSO)

我对iOS 7中的一项新功能 - 单点登录有疑问.

有没有关于它的详细信息?有人已经尝试过实施吗?我搜索了很多文章和文档 - 但没有发现任何有用的东西.我也没有找到关于Apple和Developers Apple资源的任何详细信息.在iOS 7 GM版本中没有SSO的可视化设置(我不确定它是否应该存在).

所以我的问题是 - 有人已经调查过它,可能有人可以分享一些链接和有用的信息吗?是否有关于此功能的任何技术说明,是否存在iOS 7 GM中的某些功能?

提前致谢.

single-sign-on ios ios7

25
推荐指数
2
解决办法
3万
查看次数

使用profile进行Spring集成测试

在我们的Spring Web应用程序中,我们使用Spring bean配置文件来区分三种场景:开发,集成和生产.我们使用它们连接到不同的数据库或设置其他常量.

使用Spring bean配置文件非常适合更改Web应用程序环境.

我们遇到的问题是我们的集成测试代码需要改变环境.在这些情况下,集成测试会加载Web应用程序的应用程序上下文.这样我们就不必重新定义数据库连接,常量等(应用DRY原则).

我们设置了如下的集成测试.

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = ["classpath:applicationContext.xml"])
public class MyTestIT
{
   @Autowired
   @Qualifier("myRemoteURL")  // a value from the web-app's applicationContext.xml
   private String remoteURL;
   ...
 }
Run Code Online (Sandbox Code Playgroud)

我可以使用它在本地运行@ActiveProfiles,但这是硬编码的,导致我们的测试在构建服务器上失败.

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = ["classpath:applicationContext.xml"])
@ActiveProfiles("development")
public class MyTestIT
{ ... }
Run Code Online (Sandbox Code Playgroud)

我也试过使用@WebAppConfiguration希望它可能以某种方式spring.profiles.active从Maven 导入属性,但这不起作用.

另外需要注意的是,我们还需要配置代码,以便开发人员可以运行Web应用程序,然后使用IntelliJ的测试运行器(或其他IDE)运行测试.这对于调试集成测试来说要容易得多.

java spring spring-mvc spring-test

20
推荐指数
3
解决办法
3万
查看次数

回到管理员聚会

我想将我的CouchDB实例带回管理员方.它在localhost上运行,因此不是安全问题.我不想重新安装它,因为我有一些数据库,我想继续运行.

我试着在我的评论中指出管理员用户local.ini:

[admins]
#admin = -hashed-xxxxxx
Run Code Online (Sandbox Code Playgroud)

我还从我的_users数据库中删除了所有非设计文档.

我想要回到管理员方面的主要目标是能够在没有身份验证的情况下创建数据库.

我该怎么做才能回到管理员聚会?或者,我如何设置我的实例,以便匿名用户可以创建和删除数据库?

couchdb

16
推荐指数
2
解决办法
3857
查看次数

方法应该返回Class还是Class <?>?

通配符使用Java的指导方针说:

应该避免使用通配符作为返回类型,因为它强制程序员使用代码来处理通配符.

Object getClass方法返回一个Class<?>.Class接受a中的各种方法Class<?>以及传入Class编译器时返回未经检查的警告.这让我觉得永远使用Class<?>是可取的.

如果我有返回的方法Class,我不知道如何该对象将被使用,其类型应我回来Class还是Class<?>?为什么?有什么场景我可能想简单回来Class吗?

java generics

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

应用程序可以在通知中心使用警报和横幅吗?

我正在创建一个Mac OS X应用程序来使用Notification Center.某些通知应保留在屏幕上,直到用户与其进行交互,其他通知应在显示后立即消失.

NSUserNotificationAlertStyle关键的和不断变化的系统首选项允许标语和警示之间变化.但是,两种方法都会更改从我的应用程序发送的所有通知.

我可以发送一些通知作为提醒而其他通知作为横幅吗?如果是这样,怎么样?

macos cocoa nsusernotification

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

是否有一个集成了CouchDb和Solr的项目?

我希望能够使用Solr搜索CouchDB数据库.有没有提供这种集成的项目?

我也知道CouchDB-Lucene.有没有办法把Solr挂进去?

谢谢!

solr couchdb couchdb-lucene

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

用于解析URI的Spring实用程序

我想使用现有的Spring功能从URL中提取路径变量和查询参数.我有一个路径格式字符串,对MVC @RequestMappingUriComponentsBuilder.我也有一条实际的道路.我想从该路径中提取路径变量.

例如.

String format = "location/{state}/{city}";
String actualUrl = "location/washington/seattle";
TheThingImLookingFor parser = new TheThingImLookingFor(format);
Map<String, String> variables = parser.extractPathVariables(actualUrl);
assertThat(variables.get("state", is("washington"));
assertThat(variables.get("city", is("seattle"));
Run Code Online (Sandbox Code Playgroud)

它类似于反转UriComponentsBuilder,从我对Javadocs的阅读中没有任何解析功能.

java spring spring-mvc

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

如何在没有相等的情况下在Cassandra中搜索二级索引?

我需要能够仅使用<,>,<=或> =在二级索引上执行搜索.我理解Cassandra至少需要一个相等索引子句,因为它迭代了该相等索引的所有结果.

是否有任何技巧仅使用<,>,<=或> =(至少在概念上)执行操作?这是个坏主意吗?

另外,有人知道在Cassandra有没有改变这个的计划?

谢谢!

cassandra nosql

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

如何在Java SDK中退出SQS读取

我们有一个Java Web服务,用于轮询AWS SQS队列以获取消息.它使用最长20秒的等待时间.在Tomcat中更新服务时,Tomcat会尝试关闭现有服务,然后启动更新后的版本.发生这种情况时,如果正在读取队列,则线程被卡住并且Tomcat无法阻止它,从而导致内存泄漏.从我的实验中,只有当Tomcat在队列中等待时尝试停止服务时,才会发生此内存泄漏.

如何在关机过程中停止Java中的SQS队列?

这里有一些更多的细节.

Jan 03, 2014 7:52:52 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application appears to have started a thread named [pollSQSQueue-1] but has failed to stop it. This is very likely to create a memory leak.
Jan 03, 2014 7:52:52 PM org.apache.catalina.loader.WebappClassLoader checkThreadLocalMapForLeaks
SEVERE: The web application created a ThreadLocal with key of type [com.amazonaws.auth.AWS4Signer$2] (value [com.amazonaws.auth.AWS4Signer$2@71f69c90]) and a value of type [java.text.SimpleDateFormat] (value [java.text.SimpleDateFormat@ef87e460]) but failed to remove it when the web application was stopped. Threads …
Run Code Online (Sandbox Code Playgroud)

java spring multithreading amazon-sqs amazon-web-services

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