使用HTTPS和JAAS上传Flex文件?

时间:2009-12-29 14:47:36

标签: java flex jboss blazeds jaas

我们正在尝试将文件从Flex客户端上传到Java EE应用程序。

  • 在完整的HTTPS环境中
  • Java EE服务器是JBoss 5
  • 使用BlazeDS“自定义”身份验证(以弹性形式输入用户名和密码)
  • 每次会话使用BlazeDS身份验证

在常规AMF呼叫中,我们可以访问用户主体并使用角色机制。

但是,在我们的上传servlet中,我们无法访问用户主体。

request.getUserPrincipal() // returns null

如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

前段时间,https + flex + firefox的人commented on a blog post of mine不起作用:

  

您是否尝试通过https在Firefox中上传文件?好吧,不要打扰,它无法完成! Adobe将它归咎于firefox,并把它们放在沙子里。在这里阅读Adobe的牙齿嘲笑和荒谬的说法:   http://bugs.adobe.com/jira/browse/FP-201

     

最终他们举起手来说它无法修复,虽然说'我们知道这是一个严重的问题并且致力于解决它',但建议你:   1)以不同的方式将文件发送到您的服务器   2)找到另一种形式的身份验证

可能不再是这种情况 - 注册并查看链接的错误是否仍未解决。

另外 - 这可能不是你的确切问题(至少现在还没有) - 我只是在指点。

答案 1 :(得分:0)

从你的帖子开始,由于我没有使用过BlazeDS,我不知道你是否特意遇到这个问题,但听起来像你这样 -

查看您的服务器日志,或尝试使用像Fiddler这样的Web调试器(您可以调整它以明文形式显示HTTPS流量),您将看到Flash阻止自定义HTTP身份验证标头调用FileReference.upload()。为什么会这样,我不知道,但我知道没有解决方法,除了手工制作或手工制作。