Tag: java ee

如何改变设计,使实体不使用注射?

我已经阅读并开始意识到自己的实体(数据对象 – 用于JPA或序列化)注入其中是一个坏主意。 这是我当前的设计(所有相应的字段都有getter和setter,以及为了简洁而放弃的serialVersionUID )。 这是父对象,它是实体组合图的头部。 这是我序列化的对象。 public class State implements Serializable { List cars = new ArrayList(); List planes = new ArrayList(); // other objects similar to AbstractPlane as shown below } AbstractPlane及其子类只是没有注入的简单类: public abstract class AbstractPlane implements Serializable { long serialNumber; } public class PropellorPlane extends AbstractPlane { int propellors; } public class […]

如何用JSP提供文件?

这可能听起来很愚蠢,但却是现实生活中的一个案例:( 我能够显示带有“虚拟”链接名称的HTML表格。 像这样的东西: Xyz description document.doc Xyz description documentB.doc Xyz description documentC.doc 此doc id表示数据库中的id(对于这些docs存储在blob中为byte []) 无论如何。 我能够获取该ID,查询数据库并检索byte [](甚至将其存储在tmp文件中) 我无法弄清楚该怎么做,当用户点击链接时(以及我执行数据库检索后),将“[”]字节[]发送给用户。 现在最糟糕的部分,是什么让我在这里问这个问题,我需要用JSP(没有servlet)和没有第三方库(只是……不要问我为什么我也讨厌它)这样做 所以。 我如何在jsp中提供存储在服务器文件系统中的字节数组的二进制内容 我的第一位客人是: 我接近解决方案了吗? 这对客户端是否有效,就像他真的在服务器中点击了一个真正的文件一样? 提前致谢。

Struts 2和业务对象

在Struts 2类中, http get params由字段变量自动获取 。 虽然在许多类中都重复了诸如userId,groupId,等类字段,但我决定在每个类中创建一个业务对象类RequestParams并将所有字段放在那里。 然后我所有的课程都只有RequestParams rp; 使用getRp(); 和setRp(); rp类将使用带有getter / setter和所有其他字段的userId 。 现在我看到我必须更换。 例如userId with getRp() 。 getUserId(); 第34行现在代码看起来很难看。 有了这个: messageId = ChatDao.saveMessage(userId,groupId , message); 看起来像 rp.setMessageId( ChatDao.saveMessage(rp.getUserId(), rp.getGroupId(), rp.getMessag() ) ); 做这种事情的更好方法是什么? public class SendMessageOrStartChatAction extends BaseActoinSupport{ private static final long serialVersionUID = 1L; private int userId; private int groupType; private […]

HTML 5video标记无法在Tomcat中运行(已编辑)

video无法使用文件的绝对路径和相对路径从Tomcat 7服务器播放: 编辑摘要:改变了相对路径的示例,我将video放在应用程序Root-Folder中(仍然无法解决video错误)。 我们正在构建一个用于本地使用的video查看的小应用程序。 由于HTML-5为video观看提供了巨大的支持,我们选择使用简单的Servlet / JSP编写程序,将其部署在Tomcat 7 Web服务器上 。 应用程序逻辑如下: 根路径(绝对路径)设置为tomcat中我的应用程序的根文件夹。 root下面的所有文件和目录都显示在旁边的“go”按钮。 如果通过单击“开始”选择文件夹中的video文件,则会显示video查看页面。 使用Expression langauge(EL)将video文件的相对提供给video页面到video标签的源。 video应该从localhost的硬盘播放到所有浏览器端点。 我面临的问题是我的video不是从tomcat服务器播放,而是在浏览器上复制并粘贴到video工作正常的文件时,html的’源’代码相同。 如何使它从tomcat服务器工作? 编辑后:我修改了我的应用程序以调整tomcat myapp的根文件夹中的相对路径,但它仍然无法正常工作。 以下是已编辑的问题。 我的应用程序的屏幕短裤是: 第一阶段:单击链接 第二阶段:选择要浏览的video或文件夹 第三阶段:播放video (这里我收到错误) 服务器在浏览器上呈现以下HTML(从视图源复制): Cluster Video App Enjoy the Video 当将相同的源复制并粘贴到计算机中任何位置的示例html页面时,video工作正常。 下面的图像certificate了这一点。 编辑后:服务器呈现包含video的正确相对路径。 该video尚未正常运行。 Cluster Video App Enjoy the Video video出现在我的应用程序的根目录中: 我已将编辑过的程序粘贴在此页面中以供参考。 请纠正我并帮我清除video错误。 程序 包装结构: 在web.xml <!– /welcome.do –> Controller com.cluster.vapp.controller.ControllerServlet […]

在websphere中查找本地EJB的正确方法 – 获取ClassCastException

我有一个EJB,它由本地和远程接口公开 package com.sam.enqueue; import javax.ejb.Local; import javax.ejb.Remote; import javax.ejb.Singleton; @Singleton @Local(SamEnqueueLocal.class) @Remote(SamEnqueueRemote.class) public class SamEnqueue implements SamEnqueueRemote, SamEnqueueLocal { } // remote interface package com.sam.enqueue; import javax.ejb.Remote; @Remote public interface SamEnqueueRemote { } // local interface package com.sam.enqueue; @Local public interface SamEnqueueLocal { } 我的app容器是websphere 8.0,我没有覆盖服务器分配的默认JNDI名称。 在服务器启动期间,我在日志中获得以下默认绑定: CNTR0167I: The server is binding the com.sam.enqueue.SamEnqueueRemote interface […]

POST调用另一台服务器

HI, 我们可以从一台服务器到另一台Web服务器进行POST调用。 例如,在server1中部署了一个Web应用程序。 当我们调用server2中部署的Web应用程序时,我们可以使用POST方法类型调用。 或者它总是可以是具有显式URL的GET方法

如何使用java将当前日期和时间保存到数据库?

我使用以下代码来获取当前日期和时间,但输出不是我所期望的,我不能将其保存到数据库中。 输出>>当前:Tue Mar 05 09:58:26 2013 预期产量>>当前:2013-03-05 9:58:26 …..{ SimpleDateFormat dateFormat = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”); SimpleDateFormat parseFormat = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”); Date date = new Date(); try { System.out.println(“current: ” +parseFormat.parse(dateFormat.format(date))); return parseFormat.parse(dateFormat.format(date)); } catch (ParseException ex) { Logger.getLogger(ConstructionModel.class.getName()).log(Level.SEVERE, null, ex); } return date; } …… ps.setDate(….) <<< failed 数据库 name type mydate Date

如何处理复合键hibernate

我的hbm.xml文件是这样的: 但我有两个POJO类,分别是“WordhelperWordusage.java”和“WordhelperWordusageId.java”,所以我很困惑,我应该如何处理这些类? 如何实施? 提前致谢! 更新 我确实喜欢这个 wordhelper_wordusage.save(wordhelper); wordhelper_wordusage.save(wordusage); session.save(wordhelper); session.save(wordusage); session.save(wordhelper_wordusage); 但它给我这样的例外: Hibernate: select max(ID) from SOZANA.WORDFORM Hibernate: select max(ID) from SOZANA.WORDHELPER Exception in thread “main” org.hibernate.id.IdentifierGenerationException: ids for this class must be manually assigned before calling save(): pojopackage.WordhelperWordusage

多对多JPA映射插入但不会影响子集合

我已经用hibernate再次打了一个块。我已经多次发布了用户和联系人管理的不同方面,我一直在构建。 可悲的是,在真正开始使用它之前,我没有真正有时间玩它并更好地理解它。 对不起,英语不是我的母语,我更喜欢讲法语。 我再次开始以自学成分的方式在java中编码。我通过阅读书籍来完成所有这些工作并且没有去上学。 由于时间限制,从头到尾都很难读一本书。 我不确定我是否应该把我的每个代码都放在这里处理问题,而且从我从其他论坛学到的东西就是发布必要的和简洁的。 所以在我的用户模型中我有UserAccount类,Profile包含名称,首选项等详细信息,AccountSession和Phone。 我的联系人管理模式有联系人和小组。 UserAccount与Profile一对一关联,与AccountSession一对多,联系人和组,所有双向。与电话的一对多关联是单向的,因为联系人也具有单向和电话。 联系人有一个双向多对多组合和一对多用手机,我之前说过。 集团还有多对多的接触方式。 这是映射 // UserAccount …… @OneToOne(targetEntity=UserProfileImpl.class,cascade={CascadeType.ALL}) @org.hibernate.annotations.Cascade(value=org.hibernate.annotations.CascadeType.DELETE_ORPHAN) @JoinColumn(name=”USER_PROFILE_ID”) private UserProfile profile; @OneToMany(targetEntity=ContactImpl.class, cascade={CascadeType.ALL}, mappedBy=”userAccount”) @org.hibernate.annotations.Cascade(value=org.hibernate.annotations.CascadeType.DELETE_ORPHAN) private Set contacts = new HashSet(); @OneToMany(targetEntity=GroupImpl.class, cascade={CascadeType.ALL}, mappedBy=”userAccount”) @org.hibernate.annotations.Cascade(value=org.hibernate.annotations.CascadeType.DELETE_ORPHAN) private Set groups = new HashSet(); ……. //Group @ManyToOne(targetEntity=UserAccountImpl.class) @JoinColumn(name=”USER_ACCOUNT_ID”,nullable=false) private UserAccount userAccount; @ManyToMany(targetEntity=ContactImpl.class,cascade={CascadeType.PERSIST, CascadeType.MERGE}) @JoinTable(name=”GROUP_CONTACT_MAP”, joinColumns={@JoinColumn(name=”GROUP_ID”)}, inverseJoinColumns={@JoinColumn(name=”CONTACT_ID”)}) private Set […]

JBoss Seam:如何在视图中打开jpa / hibernate会话

Spring也有类似的问题。 但是JBoss Seam呢,我需要一个关于我正在开发的应用程序的建议。 如果您需要任何特定的版本信息,它们是 接缝2.2 JSF 1.2 JPA 1和Hibernate作为持久性提供程序