cancel
Showing results for 
Search instead for 
Did you mean: 

Deployment Error due Web Service

Former Member
0 Kudos

Hi,

I try to create a WebService based on the JEE 5 Server. If I create a very simple WebService everything works quite well. But as soon as I try to create a more complex web service I receive a deployment error. The web service method contains a parameter that represents a data object. This DO contains two lists, that are accessible using getters and setters, the DO contains a standard constructor as well.

The deployment exeception I receive is:


13.11.2006 12:25:12 /userOut/daView_category (eclipse.UserOutLocation) [Thread[Deploy Thread,5,main]] INFO: deployment trace

12:24:54.653 [info  #300]  [#36]: DC API is trying to connect to 'sapw02:50204'
12:24:54.653 [debug #100]  [#36]: SessionImpl::getContext():[ B E G I N ].timerId=214
12:24:55.262 [debug #100]  [#36]: SessionImpl::getContext():[ E N D ].timerId=[id:#214, elapsed: 609 ms.]
12:24:55.262 [info  #300]  [#36]: DC API has Connected to 'sapw02:50204'
12:24:55.262 [debug #100]  [#36]: DeployProcessor::ctor:New deploy processor created[ deployerId=36 ]
12:24:55.668 [debug #200]  [#36]: DeployProcessor::Constructor:get deployer from server.[ deployerId=36 ]
12:24:55.887 [debug #200]  [#36]: DeployProcessor::Constructor:deployer get successfully:[id:#215, elapsed: 219 ms.]. [ deployerId=36 ]
12:24:55.887 [info  #200]  [#36]: +++++ Starting  D E P L O Y action +++++ [ deployerId=36 ] [ timerId=216]
12:24:55.903 [info  #200]  [#36]: Selected archives for deployment. [ deployerId=36 ]
12:24:55.903 [info  #200]  [#36]: C:Program FilesSAPDevStudio_oldeclipseworkspace_tool_beansPerfactEAR5PerfactEAR5.ear
12:24:55.903 [debug #300]  [#36]: DeployProcessor::deploy:going to generate Session id.[ deployerId=36 ]
12:24:56.106 [debug #300]  [#36]: DeployProcessor::deploy:DC API got Session id='347',time:[id:#216, elapsed: 219 ms.].[ deployerId=36 ]
12:24:56.324 [debug #300]  [#36]: DeployProcessor::uploadItemsToServer:timerId=217. [ deployerId=36 ], transactionId=347::Upload archives to the server.Remote upload path is 'C:SAPJP1JC02j2eeclusterserver0temptc~bl~deploy_controllerarchives347'
12:24:56.324 [debug #300]  [#36]: DeployProcessor::uploadItemsToServer:Going to upload 'C:Program FilesSAPDevStudio_oldeclipseworkspace_tool_beansPerfactEAR5PerfactEAR5.ear' on the server.[ deployerId=36 ]
12:24:56.778 [debug #300]  [#36]: DeployProcessor::uploadItemsToServer:[ deployerId=36 ], transactionId=347::File 'C:Program FilesSAPDevStudio_oldeclipseworkspace_tool_beansPerfactEAR5PerfactEAR5.ear' uploaded successfully as 'C:/SAP/JP1/JC02/j2ee/cluster/server0/temp/tc~bl~deploy_controller/archives/347/PerfactEAR5.ear'. Time:[id:#217, elapsed: 454 ms.]
12:24:56.778 [debug #300]  [#36]: DeployProcessor::uploadItemsToServer:[ deployerId=36 ]::Archives uploaded.time:[#217: 0.454 sec]
12:24:56.778 [debug #100]  [#36]: DeployProcessor::deployItems:enter.timerId=218.[ deployerId=36 ]
12:24:56.778 [info  #200]  [#36]: component version handling rule is UpdateAllVersions.[ deployerId=36 ]
12:24:56.981 [info  #200]  [#36]: Error strategies[ deployerId=36 ]:
12:24:56.996 [info  #100]  [#36]: deployer initialized successfully:[id:#219, elapsed: 203 ms.].[ deployerId=36 ]
12:24:56.996 [info  #100]  [#36]: Total time:[#219: 0.218 sec].[ deployerId=36 ]
12:24:57.012 [info  #200]  [#36]: Starting deployment.[ deployerId=36 ]
12:25:12.106 [info  #500]  [#36]: Deployment Exception during deployment phase 'DeploymentException',cause=An error occurred while deploying the deployment item 'sap.com_PerfactEAR5'.; nested exception is: 
	java.rmi.RemoteException:  class com.sap.engine.services.dc.gd.DeliveryException: An error occurred during deployment of sdu id: sap.com_PerfactEAR5
sdu file path: C:SAPJP1JC02j2eeclusterserver0temptc~bl~deploy_controllerarchives347PerfactEAR5.ear
version status: HIGHER
deployment status: Admitted
description: 
		1. Error: 
Cannot update application sap.com/PerfactEAR5. Reason: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key .. 
Reason: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key ; nested exception is: 
	java.rmi.RemoteException:  class com.sap.engine.services.deploy.server.utils.DSRemoteException: Cannot update application sap.com/PerfactEAR5. Reason: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key .. 
Reason: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key ; nested exception is: 
	java.rmi.RemoteException:  class com.sap.engine.services.deploy.container.DeploymentException: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key ; nested exception is: 
	java.rmi.RemoteException:  com.sap.engine.interfaces.webservices.server.deploy.WSDeploymentException: Exception occured during web services deployment. Unable to generate serialization framework for web service DummyWebServiceBeanService, application sap.com/PerfactEAR5.; nested exception is: 
	java.rmi.RemoteException:  com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions
12:25:12.293 [info  #500]  [#36]: Deployment Items status: '
		----- Sorted Items -----
	1. Client path 'C:Program FilesSAPDevStudio_oldeclipseworkspace_tool_beansPerfactEAR5PerfactEAR5.ear'
	Sdu info :name 'PerfactEAR5', vendor 'sap.com', location 'localhost', version '2006.11.13.12.24.52', software type ('J2EE', sub type ''), dependencies :[none]
		Deploy status is 'Aborted'
		Time statistics( ms ):
			1.deployment : 9953
				1.1.Bulk deployment : 9953
					1.1.1.Stop : 31
					1.1.2.Perform delivery : 9922
						1.1.2.1.Application Deployer : 9922
			2.Post process : 422
				2.1.Starting : 422

		Description:'1. Error: 
Cannot update application sap.com/PerfactEAR5. Reason: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key .. 
Reason: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key ; nested exception is: 
	com.sap.engine.services.deploy.container.DeploymentException: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key
		2. The deployment item could not be delivered. The reason is: An error occurred during deployment of sdu id: sap.com_PerfactEAR5
sdu file path: C:SAPJP1JC02j2eeclusterserver0temptc~bl~deploy_controllerarchives347PerfactEAR5.ear
version status: HIGHER
deployment status: Admitted
description: 
		1. Error: 
Cannot update application sap.com/PerfactEAR5. Reason: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key .. 
Reason: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key ; nested exception is: 
	com.sap.engine.services.deploy.container.DeploymentException: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key
. Cannot update it.'.

		----- Deployment Items -----
	1. Client path 'C:Program FilesSAPDevStudio_oldeclipseworkspace_tool_beansPerfactEAR5PerfactEAR5.ear'
	Sdu info :name 'PerfactEAR5', vendor 'sap.com', location 'localhost', version '2006.11.13.12.24.52', software type ('J2EE', sub type ''), dependencies :[none]
		Deploy status is 'Aborted'
		Description:'1. Error: 
Cannot update application sap.com/PerfactEAR5. Reason: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key .. 
Reason: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key ; nested exception is: 
	com.sap.engine.services.deploy.container.DeploymentException: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key
		2. The deployment item could not be delivered. The reason is: An error occurred during deployment of sdu id: sap.com_PerfactEAR5
sdu file path: C:SAPJP1JC02j2eeclusterserver0temptc~bl~deploy_controllerarchives347PerfactEAR5.ear
version status: HIGHER
deployment status: Admitted
description: 
		1. Error: 
Cannot update application sap.com/PerfactEAR5. Reason: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key .. 
Reason: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key ; nested exception is: 
	com.sap.engine.services.deploy.container.DeploymentException: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key
. Cannot update it.'.

12:25:12.434 [debug #300]  [#36]: DeployProcessor::deployItems:finally.Total Time:[#218: 15.656 sec].[ deployerId=36 ]
12:25:12.434 [info  #200]  [#36]: +++++ End  D E P L O Y action +++++[ deployerId=36 ]. Total time:[#216: 16.547 sec]

Can anyone help me? The deployment trace looks like there is a problem with the serialization framework. But my DO is totally Serializable, meaning all referencing interfaces and classes implement Serializable.

Thanks in Advance

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

The reason for this deployment error is simple:

The serialization framework does not allow Interfaces in parameters for web methods. Unfortunatly is the error messag for this error not readable.

1.) The message does not state what is the problem.

2) The error message is not localized

Furthermore there is a second big issue. If you annotate a session bean using the WebService annotation <b>all public</b> methods will be exposed as service methods.

On the other hand you do expect, that if you annotate <b>one</b> public method using the WebMethod annotation, that all not annotated public method<b> will not</b> be exposed.

This is not the case. If you do not want to expose a public method, you will have to annotate it manualle with <b>@WebMethod(exclude=true)</b>.

If this is done, according the above mentioned restrictions, everything should work well.

Regards,

Martin

Vlado
Advisor
Advisor
0 Kudos

Hi Martin,

It's good that you have come to the cause of the problem by yourself. Yes, the Sun serialization framework does not support interfaces as web method parameters. This is "hidden" in the exception

com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions

I agree that it's not quite obvious from the exceptions in the Deploy View Console, however if you have had a look into the server log files (in <Install_Dir>/JP1/JC00/j2ee/cluster/server0/log) you would probably have found more detailed information about the root cause.

Regarding the second issue, this is exactly how the WebService specifications define the case. You are probably right to some extent in your assumption about the WebMethod annotation, but the specs seem to treat it in a bit different way. See . The bottom line is that all public methods except those annotated with @WebMethod(exclude=true) will be exposed as web service operations.

Hope that clarifies a bit!

-Vladimir