MentaBean

Rev

Rev 180 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 180 Rev 202
Line 65... Line 65...
65
                }
65
                }
66
                       
66
                       
67
                final DBField seqField = bc.getSequenceField();
67
                final DBField seqField = bc.getSequenceField();
68
               
68
               
69
                if (seqField == null) {
69
                if (seqField == null) {
-
 
70
                       
-
 
71
                        //find autoincrement field
70
                       
72
                       
71
                        super.insert(bean);
73
                        super.insert(bean);
72
                       
74
                       
73
                        dispatchAfterInsert(bean);
-
 
-
 
75
                        final DBField autoIncrement = bc.getAutoIncrementField();
-
 
76
-
 
77
                        if (autoIncrement == null) {
-
 
78
-
 
79
                                dispatchAfterInsert(bean);
-
 
80
                               
-
 
81
                                return;
-
 
82
                        }
-
 
83
                       
-
 
84
                        PreparedStatement stmt = null;
-
 
85
-
 
86
                        ResultSet rset = null;
-
 
87
                       
-
 
88
                        StringBuilder sb = new StringBuilder("select lastval();");
74
                       
89
                       
75
                        return;
-
 
-
 
90
                        try {
-
 
91
-
 
92
                                stmt = conn.prepareStatement(sb.toString());
-
 
93
-
 
94
                                rset = stmt.executeQuery();
-
 
95
-
 
96
                                if (rset.next()) {
-
 
97
-
 
98
                                        final long id = rset.getLong(1);
-
 
99
                                       
-
 
100
                                        try {
-
 
101
-
 
102
                                                injectValue(bean, autoIncrement.getName(), id, Integer.class);
-
 
103
                                               
-
 
104
                                        } catch(Exception e) {
-
 
105
                                               
-
 
106
                                                // try long as well:
-
 
107
                                                injectValue(bean, autoIncrement.getName(), id, Long.class);
-
 
108
                                        }
-
 
109
                                       
-
 
110
                                        dispatchAfterInsert(bean);
-
 
111
                                       
-
 
112
                                        return;
-
 
113
                                }
-
 
114
                               
-
 
115
-
 
116
                        } catch (Exception e) {
-
 
117
-
 
118
                                throw new BeanException(e);
-
 
119
-
 
120
                        } finally {
-
 
121
-
 
122
                                close(stmt, rset);
-
 
123
                        }
76
                }
124
                }
77
               
125
               
78
                String seqName = bc.getSequenceName();
126
                String seqName = bc.getSequenceName();
79
               
127
               
80
                if (seqName == null) {
128
                if (seqName == null) {