|
[cvs] openejb/src/facilities/org/openejb/admin/web DeployerBean.java: msg#00038java.openejb.devel
Modified: src/facilities/org/openejb/admin/web Tag: exp_branch-webadmin DeployerBean.java Log: Added a check for identical beans By Tim Urberg, on 0103/02/15 10:28:11 Revision Changes Path No revision No revision 1.1.2.10 +25 -12 openejb/src/facilities/org/openejb/admin/web/Attic/DeployerBean.java Index: DeployerBean.java =================================================================== RCS file: /cvsroot/openejb/openejb/src/facilities/org/openejb/admin/web/Attic/DeployerBean.java,v retrieving revision 1.1.2.9 retrieving revision 1.1.2.10 diff -u -r1.1.2.9 -r1.1.2.10 --- DeployerBean.java 15 Feb 2003 16:33:30 -0000 1.1.2.9 +++ DeployerBean.java 15 Feb 2003 18:28:10 -0000 1.1.2.10 @@ -131,12 +131,6 @@ // TODO: Better exception handling. e.printStackTrace(); } - - //put all the used deployments into the array - DeploymentInfo[] deployments = OpenEJB.deployments(); - for(int i=0; i<deployments.length; i++) { - this.usedBeanNames.add(deployments[i].getDeploymentID()); - } } public void setBooleanValues(boolean[] booleanValues) { @@ -185,8 +179,15 @@ EjbDeployment deployment = new EjbDeployment(); ResourceLink link; - //set the deployment info - deployment.setEjbName(deployerBeans[i].getEjbName()); + if(this.usedBeanNames.contains(deploymentId)) { + throw new RemoteException("The deployment id: " + deploymentId + + " is already being used by another bean, please choose another deployment id."); + } + + this.usedBeanNames.add(deploymentId); + + //set the deployment info + deployment.setEjbName(deployerBeans[i].getEjbName()); deploymentHTML.append("<tr>\n<td>").append(deployerBeans[i].getEjbName()).append("</td>\n"); deployment.setDeploymentId(deploymentId); deploymentHTML.append("<td>").append(deploymentId).append("</td>\n"); @@ -211,9 +212,9 @@ link = new ResourceLink(); link.setResId(resourceRef[j][0]); link.setResRefName(resourceRef[j][1]); - deploymentHTML.append("<tr>\n<td>").append(resourceRef[j][1]).append( - "</td>\n"); - deploymentHTML.append("<td>").append(resourceRef[j][0]).append("</td>\n</tr>\n"); + deploymentHTML.append("<tr>\n<td>").append(resourceRef[j][1]).append("</td>\n"); + deploymentHTML.append("<td>").append(resourceRef[j][0]).append( + "</td>\n</tr>\n"); deployment.addResourceLink(link); } } @@ -262,13 +263,14 @@ } private String autoAssignDeploymentId(Bean bean) { + this.resetUsedDeploymentIds(); String ejbName = bean.getEjbName(); String newEjbName; //first check for the deployment id in the list //and make sure that all the bean names are unique if (this.usedBeanNames.contains(ejbName)) { - while(true) { + while (true) { newEjbName = ejbName + (Long.MAX_VALUE * Math.random()); if (!this.usedBeanNames.contains(newEjbName)) { this.usedBeanNames.add(newEjbName); @@ -378,6 +380,7 @@ "<tr><td colspan=\"4\"><input type=\"submit\" name=\"submitDeploymentAndContainerIds\""); htmlString.append(" value=\"Continue >>\"></td></tr></table>\n"); + this.resetUsedDeploymentIds(); return htmlString.toString(); } @@ -470,6 +473,16 @@ } htmlString.append("</table>\n"); + } + + private void resetUsedDeploymentIds() { + this.usedBeanNames = new ArrayList(); + + //put all the used deployments into the array + DeploymentInfo[] deployments = OpenEJB.deployments(); + for (int i = 0; i < deployments.length; i++) { + this.usedBeanNames.add(deployments[i].getDeploymentID()); + } } /*------------------------------------------------------*/ ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ http://OpenEJB.sf.net OpenEJB-development mailing list OpenEJB-development@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/openejb-development
|
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | [cvs] openejb/src/facilities/org/openejb/admin/web SystemInfoHttpBean.java HelloBean.java, Tim Urberg |
|---|---|
| Next by Date: | [ openejb-Tasks-592130 ] Validate: Find methods are implemented, SourceForge.net |
| Previous by Thread: | [cvs] openejb/src/facilities/org/openejb/admin/web DeployerBean.java, Tim Urberg |
| Next by Thread: | [cvs] openejb/src/facilities/org/openejb/admin/web SystemInfoHttpBean.java HelloBean.java, Tim Urberg |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |