The Service Context is an object that contains context information about a given API call. By using this pattern it is possible to consolidate many different methods with different sets of optional parameters into a single, easier to use method. It also aggregates information necessary for transversal features such as permissioning, tagging, categorization, etc.
Fields
Here are the most significant fields of the ServiceContext object as of v5.2:
boolean addCommunityPermissions;
boolean addGuestPermissions;
Map<String, Serializable> attributes;
String communityPermissions;
long companyId;
Map<String, Serializable> expandoBridgeAttributes;
String guestPermissions;
String languageId;
String layoutURL;
String pathMain;
String portalURL;
PortletPreferencesIds portletPreferencesIds;
long scopeGroupId;
String tagsCategories;
String tagsEntries;
String userDisplayURL;
long plid;
long userId;
}}}
Usage
All of the fields of this object are optional, although the services that store any type of content will require you to specify at least the scopeGroupId. Here is a simple example of how to create a ServiceContext instance and pass it to a service API:
ServiceContext serviceContext = new ServiceContext();
serviceContext.setScopeGroupId(myGroupId);
BlogsEntryServiceUtil.addEntry(...., serviceContext);
If you are invoking the service from a servlet, an struts action or any other frontend class which has access to the portletRequest, you can use a utility method that will create the ServiceContext object and fill it with all the necessary values automatically. In that case the above example could be rewritten as follows:
ServiceContext serviceContext = ServiceContextFactory.getInstance(BlogsEntry.class.getName(), portletRequest);
BlogsEntryServiceUtil.addEntry(...., serviceContext);
分享到:
相关推荐
ServiceContext serviceContext = new ServiceContext(); serviceContext.setAttribute(ServiceContext.EVENT_ID, "123456"); i.eval("print(person.getPname());"); // 输出结果 i.eval("if (serviceContext....
public ServiceContext ServiceContext { get; set; } public void Insert(DataTable dataTable, int batchSize = 10000) { Checker.ArgumentNull(dataTable, "dataTable"); if (dataTable.Rows.Count == 0) ...
ServiceContext 是一个上下文对象,提供了服务相关的信息,该对象不应该被修改,应该和指定的服务紧密关联。 RemoteInvokeService RemoteInvokeService 是一个远程调用服务,提供了 RPC 调用机制。该服务用于 ...
内置serviceContext服务框架,所有的服务都基于此实现,用户可以自定义自己的服务。 spring友好,如果用户想使用spring,可以无缝整合,不需要任何配置。 内置web开发需要的几乎所有功能:表单处理,url处理,内置...
例如,`-keep class oms.miracle.mobiletv.broadcast.ServiceContext { *; }` 这行命令会保护 ServiceContext 类及其所有成员不被 ProGuard 处理。 ProGuard 的主要参数包括: - `-include {filename}`:从指定...
<url-pattern>/dwr/*</url-pattern> ``` 这里配置了DWR的Servlet,并指定了几个初始化参数,如`debug`开启调试模式等。 ##### 4. 配置serviceContext.xml 如果使用Spring框架管理Bean,则还需要在Spring的配置...
public CustomTimerJob(string jobName, SPServiceContext serviceContext, SPWebApplication webApp, Guid jobId, SPJobLockType lockType) : base(jobName, serviceContext, webApp, jobId, lockType) { } ...
String[] locations = {"D:/project/applicationContext.xml", "D:/project/serviceContext.xml"}; ApplicationContext ctx = new FileSystemXmlApplicationContext(locations); ``` 3. **`...
var tableName = DbUtility.FormatByQuote(ServiceContext.Database.Provider.GetService(), dataTable.TableName); using (var bulk = new SqlBulkCopy(connection, SqlBulkCopyOptions.KeepIdentity, null) { ...
public DocumentDownloadCountJob(SPWebApplication webApp, string jobName, SPServiceContext serviceContext) : base(jobName, webApp, serviceContext, SPJobLockType.None) { // 设置属性... } } ``` 2. ...
- **Webx2应用的Context结构**:在Webx2中,主要采用了`ServiceContext`作为核心,其中包括了多个`SubInstance`实例,每个实例都有自己的`SpringContext`。 - **Webx3应用的Context结构**:Webx3中取消了`...
在您的代码中,创建一个新的 ServiceAccess 对象,它充当 Umbraco ServiceContext 的包装器: var Access = new ServiceAccess(); var ContentPage = Access.Services.ContentService.GetById(1000);
要使用它,应具有以下知识: 在Umbraco的Umbraco CMS中开发自定义代码和逻辑.Elasticsearch是一个以代码为中心的库如何使用IContent , IMedia和ServiceContext服务以编程方式从Umbraco提取节点属性如何使用 ...
{ "severity" : "DEBUG" , "timestamp" : "2021-03-06T21:14:44.870397172Z" , "message" : "" , "serviceContext" : { "service" : "fluxcd" } , "somefield" : "foo" } // this error { "err" : "somet
在SpringSide 2中,每创建一个新的Dao类,都需要在serviceContext.xml中手动添加相应配置,而在SpringSide 3中,自动扫描功能使得这一过程自动化,大大提高了开发效率。 总的来说,SpringSide 3.3.2技术参考手册...
为了在服务中使用会话信息,可以通过`MessageContext`和`ServiceContext`对象来存储和检索会话数据。这些对象提供了get和set方法来获取和设置属性。 ##### 2. 配置 `scope` 属性 在`service.xml`文件中,可以通过...
UserProfileManager profileManager = new UserProfileManager(serviceContext); string currentLoginName = SPContext.Current.Web.CurrentUser.LoginName; UserProfile userProfile = profileManager....
ISR是响应中断的实际代码,而ServiceContext则传递给ISR的特定上下文信息。 总结来说,Windows中断处理涉及IDT的管理和中断服务例程的注册,通过精心设计的中断处理机制,系统能够有效地响应各种硬件和软件中断事件...
这里,除了基本的个人信息,还包含了服务上下文(`serviceContext`),例如资产标签名(`assetTagNames`)。当服务执行完成后,回调函数会输出返回的对象,通常包含新用户的ID。 2. **在Java中通过URL调用JSON Web...