2017-07-19 41 views
0

我在使用Jersey,Glassfish 4和Netbeans实施文件上传处理时遇到了麻烦。我知道那里有很多教程,但他们都使用maven项目。我们知道,在我们选择Glassfish作为服务器之后,我们可以自动使用所有的JEE API原因。Netbeans将Glassfish中的JEE API添加到我们的库中(如下图所示)。我认为它仅用于编译而不包含在部署的战争中。使用Jersey,Glassfish 4和Netbeans处理非Maven项目的文件上载处理

enter image description here

我们甚至可以做一个新的非网络的Java应用程序,并通过添加Java EE 7 API到我们的图书馆,它的编制只是API,在运行中的所有类的使用JEE API是由提供服务器(如第二张图)。

enter image description here

现在,我想用泽西多部分API来处理文件上传。 Glassfish已经在其模块文件夹中包含必需的jar,如jersey-media-multipart。 (第3张图片),我知道它们是在运行时提供的,但我需要它们来编译我的项目。简单地将jar添加到项目库不是一个正确的方法,因为它给了我很多奇怪的错误,我们知道我们不应该让Glassfish已经提供它们。

enter image description here

我需要这样的东西泽西多部分API,以便在运行该项目使用的所有的Glassfish已经提供了类来编译该项目。就像Netbeans提供的Java EE 7 API库一样,并且运行良好。

回答

0

好吧,这里的解决方案......

如果只添加了球衣,媒体多,你会得到错误HttpReader没有找到,所以你需要AADD所有的球衣罐子在GlassFish模块。

接下来,右键单击NetBeans项目中的库文件夹并在编译选项卡中,取消选中包列中的所有球衣包,以使它们在构建/运行项目时被排除。

enter image description here

希望这有助于人谁也有类似的问题。