@Override
@Transactional(readOnly=false,noRollbackFor={DoesNotExistException.class},rollbackFor={Throwable.class})
public ReqComponentInfo updateReqComponent(final String reqComponentId, final ReqComponentInfo reqComponentInfo)
throws DataValidationErrorException, DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException, VersionMismatchException {
checkForMissingParameter(reqComponentId, "reqComponentId");
checkForMissingParameter(reqComponentInfo, "reqComponentInfo");
reqComponentInfo.setId(reqComponentId);
ReqComponent reqComp = null;
reqComp = statementAssembler.toReqComponentRelation(true, reqComponentInfo);
ReqComponent updatedReqComp = statementDao.update(reqComp);
ReqComponentInfo updReqCompInfo = StatementAssembler.toReqComponentInfo(updatedReqComp);
return updReqCompInfo;
}