XPage中的“文件上传”控件是个什么东东呀?怎么用程序读取呀?

各位专家、大侠:

本人开发一个Xpage页面,其中包括一个文件“文件上载”控件,绑定文档的一个富文本域。思路是先通过“文件上载”选一个EXCEL附件文件,然后加一个按钮操作,把文件的内容都出来。其中一定要先得到上传文件的全称,包括路径和文件名,然后创建对象读取这个文件的内容。

一般的控件,都可以用getComponent("inputText1").getValue()这样的语句读出,而“文件上载”却无法读出,对getComponent("fileUpload1").getValue()进行检测,既没有报错,又没有反应,结果好像是空的。明明选择文件后,“文件上载”控件的框内显示完整的文件名,可就是读不出来呀。

认真研究了“上传控件”的一系列属性,就是找不到这个显示在框子里的文件名对应的属性。感觉““文件上载”及“文件下载”是复杂的组合控件。如何用程序方法读取及控制,望指教!

参与29

11同行回答

yuxiaoxuyuxiaoxu软件开发工程师上海理想
有很多客户端的东西基于安全原因就取不到了。显示全部

有很多客户端的东西基于安全原因就取不到了。

收起
软件开发 · 2016-12-01
浏览1746
szkenszkenszkenszken其它contempo
XPAGE 就是 JSF的一种封装, JSF 是java的一种标准, 所以说java 能做的事情, xpage 也能做。 不会和不能是两种不同的概念。显示全部

XPAGE 就是 JSF的一种封装, JSF 是java的一种标准, 所以说java 能做的事情, xpage 也能做。

不会和不能是两种不同的概念。

收起
互联网服务 · 2016-12-07
浏览1712
hightwebhightweb其它hightweb
这个例子之前我下载过,多谢szkenszken无私的分享!只是本人没有JAVA功底,无法应对其中的一系列错误。本人只想通过简单的JavaScript实现。显示全部

这个例子之前我下载过,多谢szkenszken无私的分享!只是本人没有JAVA功底,无法应对其中的一系列错误。本人只想通过简单的JavaScript实现。

收起
互联网服务 · 2016-12-02
浏览1729
szkenszkenszkenszken其它contempo
要想读取excel的内容, 首先要拿到上传到服务器上后的excel 的 全路径, 然后用poi 或者其他东西来解析excel文件的内容。http://www.lotuschina.net/club/thread-17445-1-1.html显示全部

要想读取excel的内容, 首先要拿到上传到服务器上后的excel 的 全路径, 然后用poi 或者其他东西来解析excel文件的内容。

http://www.lotuschina.net/club/thread-17445-1-1.html

收起
互联网服务 · 2016-12-02
浏览1712
tomzxdtomzxd软件开发工程师Circle
理解Notes的富文本域才可以实现附件的分离读取。不管你用哪种方法,基本的思路都是,把附件拆分存放到某个文件夹下面,然后通过OLE(LS代码)的方法读取或者POI(JS代码)的方法进行打开附件文件,读取附件内容。...显示全部

理解Notes的富文本域才可以实现附件的分离读取。

不管你用哪种方法,基本的思路都是,把附件拆分存放到某个文件夹下面,然后通过OLE(LS代码)的方法读取或者POI(JS代码)的方法进行打开附件文件,读取附件内容。

收起
互联网服务 · 2017-01-13
浏览1478
周新心周新心软件开发工程师PrivateInfo
以前做过Xpage的项目,几乎每个核心的表单都有上传的功能,等我整理一下说说:1.如你所知,附件是存在富文本里了2.富文本本质上是一个集合的集合所以要取附件内容可以使用下列方法(我以前工作的代码,不一定最优):RichTextItem item = (RichTextItem)doc.getFirstItem(\"fldFile\");V...显示全部

以前做过Xpage的项目,几乎每个核心的表单都有上传的功能,等我整理一下说说:

1.如你所知,附件是存在富文本里了

2.富文本本质上是一个集合的集合

所以要取附件内容可以使用下列方法(我以前工作的代码,不一定最优):

RichTextItem item = (RichTextItem)doc.getFirstItem(\"fldFile\");

Vector v = item.getEmbeddedObjects();

Enumeration e = v.elements();

while (e.hasMoreElements()) {

                                EmbeddedObject eo = (EmbeddedObject)e.nextElement();

……


这段代码演示怎么从富文本域里面轮询附件,这里eo已经是一个附件对象了

收起
软件开发 · 2016-12-13
浏览1709
hightwebhightweb其它hightweb
领教了。我要开始学习JAVA了。显示全部

领教了。我要开始学习JAVA了。

收起
互联网服务 · 2016-12-07
浏览1720
hightwebhightweb其它hightweb
综合各位专家的建议得出结论:不要对Xpage寄予过高希望!很多编程元素是不可控的,无法实现复杂编程。显示全部

综合各位专家的建议得出结论:不要对Xpage寄予过高希望!很多编程元素是不可控的,无法实现复杂编程。

收起
互联网服务 · 2016-12-06
浏览1688
szkenszkenszkenszken其它contempo
如果只想用javascript, 看看这个吧 http://www.jb51.net/article/91292.htm前提是 浏览器要支持 和html5的 filereader。显示全部

如果只想用javascript, 看看这个吧 http://www.jb51.net/article/91292.htm

前提是 浏览器要支持 和html5的 filereader。

收起
互联网服务 · 2016-12-06
浏览1719
yuxiaoxuyuxiaoxu软件开发工程师上海理想
你好,现在上传的控件不能用编程方式设置,但你可以提交前先获取到上传文件的路径。通过Excel的VBA方式进行编程读取数据。这个需要安装Office。另外一种就是上传成功后,通过服务器后台解析数据,这个用到POI。这个不依赖于客户端环境,不需要安装Office。Xpage我不大用,但基本也是...显示全部

你好,现在上传的控件不能用编程方式设置,但你可以提交前先获取到上传文件的路径。

通过Excel的VBA方式进行编程读取数据。这个需要安装Office。

另外一种就是上传成功后,通过服务器后台解析数据,这个用到POI。这个不依赖于客户端环境,不需要安装Office。

Xpage我不大用,但基本也是一种封装,很多是Dojo的。

我用下面可以测试到获取到上传的路径。


收起
软件开发 · 2016-12-04
浏览1695
  • 多谢指教!可是“文件上传”控件很怪,用getElementById得到的是null。
    2016-12-06
  • 你要看最终页面的HTML。前端应该是用Dojo之类的框架的封装的。你需要在浏览器端查看。
    2016-12-07

提问者

hightweb
其它hightweb

相关问题

相关资料

问题状态

  • 发布时间:2016-12-01
  • 关注会员:7 人
  • 问题浏览:6066
  • 最近回答:2017-01-13
  • X社区推广