玩火请打119吧 关注:2贴子:139
  • 12回复贴,共1

javaEE exception 总结

只看楼主收藏回复

一楼度娘


1楼2014-02-18 13:37回复
    jaxb 中将java对象序列化xml遇到属性为Timestamp不能正常序列化的问题
    解决办法 :编写一个 TimestampAdapter 适配器,新建一个package-info.java类
    @XmlJavaTypeAdapters({@XmlJavaTypeAdapter(value=TimestampAdapter.class,type=Timestamp.class)})
    写在包名上面


    2楼2014-02-18 13:52
    回复
      A cycle is detected in the object graph. This will cause infinitely deep XML
      使用jaxb注解一对多关联的两个对象之间会出现无限递归的问题
      使用了@XmlTransient注解问题依旧
      原来是因为注解的位置
      因为之前用jpa注解都放在get方法上
      所以jaxb的注解也放在了get方法上怕有什么冲突
      改为属性名上就好了


      3楼2014-02-18 14:09
      回复
        接着上面的问题
        加了@XmlTransient
        注解后发现xml序列化传到后台去缺少值
        看来还得加那个重写jaxb父类的方法


        4楼2014-02-18 19:05
        回复
          public void afterUnmarshal(Unmarshaller u, Object parent) {
          for(int i =0;i<pacsAppnoteMeds.size();i++){
          pacsAppnoteMeds.get(0).setPacsAppnote(this);
          }
          }


          5楼2014-02-18 19:31
          回复
            在一个实体文件中,注解要么全部放在字段上,要么全部放在get方法上,不能混合使用!、
            注解包括jaxb框架的注解和hibernate jpa注解


            6楼2014-02-20 16:20
            回复
              apache wink的 response.getEntity方法调用后报错 java强制转换异常
              String xml = response
              .getEntity(new EntityType<String>() {
              });
              因为我前面调用了这行代码 删了就好了 不知为何
              对apache wink还不是很熟悉


              7楼2014-02-24 16:16
              回复
                MySql Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'
                解决方法:
                1、提高允许的max_connection_errors数量(治标不治本):
                  ① 进入Mysql数据库查看max_connection_errors: show variables like '%max_connection_errors%';
                  ② 修改max_connection_errors的数量为1000: set global max_connect_errors = 1000;
                  ③ 查看是否修改成功:show variables like '%max_connection_errors%';
                2、使用mysqladmin flush-hosts 命令清理一下hosts文件(不知道mysqladmin在哪个目录下可以使用命令查找:whereis mysqladmin);
                  ① 在查找到的目录下使用命令修改:/usr/bin/mysqladmin flush-hosts -h192.168.1.1 -P3308 -uroot -prootpwd;
                  备注:
                    其中端口号,用户名,密码都可以根据需要来添加和修改;
                    配置有master/slave主从数据库的要把主库和从库都修改一遍的(我就吃了这个亏明明很容易的几条命令结果折腾了大半天);
                    第二步也可以在数据库中进行,命令如下:flush hosts;


                8楼2014-02-28 11:25
                回复
                  jpa中用的createSQLQuery返回值定义为list<Object[]>
                  由于sql的特殊原因 可能返回值的数组里面 list.get(i)的长度不固定,
                  可能是1或者更多,当是1的时候系统就不认定它是一个Object[] 而是一个String
                  所以报了这样一个错java.lang.String cannot be cast to [Ljava.lang.Object
                  如果结果就一条数据返回的对象改为String[]


                  9楼2014-03-13 10:37
                  回复
                    hibernate jpa问题:: object references an unsaved transient instance
                    把对象序列化后 然后改变了该对象的值 然后又使用了该对象的值就有问题
                    所以序列化后最好不要随意改动后使用


                    10楼2014-03-18 16:15
                    回复
                      使用Hibernate4.0后,需要引入jboss-logging.GA.jar。


                      11楼2014-04-13 15:03
                      回复
                        object references an unsaved transient instance - save the transient instance before flushing
                        保存了一个瞬态的对象
                        需要把这个那个对象先持久化到数据库


                        12楼2014-04-18 11:30
                        回复
                          tomcat启动报Context []startup failed due to previous errors的错误
                          是因为spring或struts配置文件的丢失导致


                          13楼2014-07-09 10:41
                          回复