0

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

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

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

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

request.getUserPrincipal() // returns null

如何解决这个问题?

4

2 回答 2

0

不久前,一个人在我的一篇博文中评论说 https + flex + firefox 不起作用:

您是否尝试过通过 https 在 Firefox 中上传文件?好吧,别麻烦了,这不可能!Adobe 将其归咎于 firefox 并将他们的头埋在沙子里。在这里阅读 Adob​​e 咬牙切齿和荒谬的说法:http: //bugs.adobe.com/jira/browse/FP-201

最终他们举手表示无法修复,尽管说“我们了解这是一个严重的问题并致力于解决它”,但建议您:1)将文件发送到您的服务器不同的方式 2) 寻找另一种形式的身份验证

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

另外-这可能不是您的确切问题(至少现在还不是)-我只是在给出指示。

于 2009-12-29T15:06:26.663 回答
0

从你的帖子中,由于我没有使用 BlazeDS,我无法判断你是否特别遇到了这个问题,但在我看来,你是——

查看您的服务器日志,或尝试使用Fiddler之类的 Web 调试器(您可以对其进行调整以以明文形式显示 HTTPS 流量),您将看到 Flash 使用 FileReference.upload() 阻止自定义 HTTP auth 标头。为什么会这样,我不知道,但除了手动制作某些东西或您自己的东西之外,我不知道有什么解决方法。

于 2009-12-29T18:38:57.403 回答