final SecurityContext sc = SecurityContextFactory.createSecurityContext("CORBA_REMOTE");
sc.getUtil().createSubjectInfo(principal, password, null);
//TODO: deal with the transaction
final InterceptorContext interceptorContext = new InterceptorContext();
interceptorContext.setContextData(new HashMap<String, Object>());
interceptorContext.setParameters(params);
interceptorContext.setMethod(op.getMethod());
interceptorContext.putPrivateData(ComponentView.class, componentView);
interceptorContext.putPrivateData(Component.class, componentView.getComponent());
retVal = componentView.invoke(interceptorContext);
} finally {
if (tx != null) {
if (transactionManager.getStatus() != Status.STATUS_NO_TRANSACTION) {
transactionManager.suspend();