Tuesday, April 16, 2013

Webcentre Discussions Dissection


Hi All , after sleeping for quite some time, thought to start blogging back. This  time I thought to start with ADF/Webcentre. Webcentre , as we all are seeing is gaining quite a momentum in consulting market now and I can see numerous projects being done some standard spaces implementation , but most projects are custom Webcentre portal as its gives you the liquidity to build any to integrate or build standard ADF application and use lot many features of Webcentre.

An essential part of Webcentre is Webcentre Discussions(Jive Forums) server and its service. Recently I worked on a custom webcentre project where I integrated the discussion service of webcentre. My idea of writing this article is to explain the discussion service terminology and  details and then programmatic API(s) which might help you to do something creative in your project with discussion service.


About Jive Forums
Jive forums is the software which runs on discussion server and is a self sufficient forums portal/website. In fact Oracle forums are built on the same platform. Its quite stable, robust and fast.There are currently two editions of Jive Forums: Silver Edition (for small to midsize deployments) and Gold Edition (for large deployments). Some Features unique to the Gold edition include:

• Question/answer workflow, through which users can mark a post as a question then designate
responses as helpful or correct (scoring points for the users who posted them).
• Expert email notification, in which email notifications are sent for unanswered questions.
• Multiple theme configurations to customize look and feel.
• Reward point system, where points are awarded for responses based on how useful the response
turns out to be.
• Community everywhere, through which users embed discussion threads into other web pages.
• Web services for programmatic access to Jive Forums data.


Discussion Forums basics
a) Community : A community typically corresponds to a group of people with a common set of interests and it usually has a single overall purpose.
b) Category : A category is the broadest classification of content in a community. Categories may contain other categories, forums, threads, and messages.
c)Forum: A forum generally focuses on a single thread or a small group of associated threads, and is narrower in scope than a category.
d)Thread : Threads are the individual questions or subjects discussed within the scope of a single forum.A thread is defined as an original message and all of its replies. Threads may run only a few messageslong, or may include hundreds of messages.
e)Message : A message refers to a single question, discussion point or reply that is posted to a forum.Messages comprise a subject header, a message body, and sometimes a file attachment or attachments.

Discussion Forums database details
Sometimes, its essential to look into the database of discussion forums, for a requirement like grooup update of something. For this reason, it is absolutely necessary for you to have the understanding of some of the main tables, used in Forums are :

Category : select * from jivecategory where name like ('')

Forums: select * from jiveForum where categoryid=<category id which you can get from jivecategory>

Thread :  Thread is created in the forum where root message id is the starting message of the thread.
select * from jivethread where forumid=92 order by modificationdate desc
You can get root messageid and thread id from the above query. Root message id is the starting message of the thread.

Message : All messages of a thread are stored in the table jivemessage with parent child relationship also maintaining the sequence of replies.If parentmessageid is null then root message, else child message.

select * from jivemessage where forumid= and threadid= and messageid=

--the direct child of this message can be found by quering with parent
--message id as message id
select * from jivemessage where forumid= and threadid= and parentmessageid=

-- using connect by prior getting entire message stack of a thread
--starting from root node
SELECT LEVEL,jv.*
      FROM jivemessage jv
      where jv.forumid= and jv.threadid=
      START WITH jv.messageid =
      CONNECT BY PRIOR jv.messageid = jv.parentmessageid
      ORDER by creationdate
   
-- Pls note that each message 's user id
-- is jive user id which is based on LDAP username configured in weblogic security realm
-- and the relationship is stored in jiveuser table  
SELECT * FROM JIVEUSER

Webcentre Discussion Services Available Taskflows:
With the discussion services, you have the following taskflows:

  1. Discussion Forums: Taskflow that integrates the basic functionality to allow discussions on a page
  2. Discussions - Popular topics: Taskflow that shows the popular topics
  3. Discussions - Quick view: A smaller view to list the topics
  4. Discussions - Recent topics: Taskflow that shows a list of the recent topics
  5. Discussions - Watched topics: Taskflow that shows the list of the watched topics from the current user
  6. Discussions - Watched forums: Taskflow that shows the list of the watched forums from the current user



Webcenter Discussion Forum Programmatic APIs:
Sometimes, you might get a requirement, where you  have requirement to play with code on creating category/discussions/forums. programatically, so giving common APIs used for the same:

Common code for all:

import oracle.webcenter.collab.announcement.AnnouncementFilter;
import oracle.webcenter.collab.announcement.AnnouncementService;
import oracle.webcenter.collab.announcement.AnnouncementSession;
import oracle.webcenter.collab.forum.Category;
import oracle.webcenter.collab.forum.CategoryService;
import oracle.webcenter.collab.forum.Forum;
import oracle.webcenter.collab.forum.ForumService;
import oracle.webcenter.collab.forum.ForumSession;
import oracle.webcenter.collab.forum.MyDiscussionsService;


public ForumSession session = null;
public CategoryService catService = null;
public ForumService forumService = null;


Category
catService = (CategoryService)session.getService(CategoryService.class);
Category newCreatedCategory = catService.createCategory(null, new Long(parentCategoryId).toString(),categoryName, categoryName, categoryName);
categoryId = Long.parseLong(newCreatedCategory.getId());

catService = (CategoryService)session.getService(CategoryService.class);
long rootCategoryId = Long.parseLong(catService.getRootCategoryId());


Forum
List forums = catService.getForums(new Long(categoryId).toString(), null,true);
forumService = (ForumService)session.getService(ForumService.class);
Forum newCreatedForum = forumService.createForum(null,new Long(RootCategoryId).toString(),TopicName, TopicName, TopicName);
forumId = Long.parseLong(newCreatedForum.getId());
Forum forum = forumService.getForum(new Long(forumId).toString());
long topicCount = forum.getTopicCount();


I hope this article gives you a clear picture of discussion forums service in webcentre.

43 comments:

www discovery said...

I enjoyed to see the post. I got many useful information from the site
http://techinfo24u.blogspot.com/
Its very useful for me.

Neel said...

Hi Mukul,

thanks for publishing the Api's for creating the category and forums, could you please help how we need to initialize the connection to discussion server, couldnt able to get much information how we need to initialize the session object.

Neel said...

forumService

Vijay said...

If you or your friends are interested then please revert back with your updated resume.
Location: Bangalore
Oracle Applications (Finance)
Role: Consultants/Senior Consultants/Team Leads
Experience: 3 to 7 yrs
Relevant Exp: 3 Yrs in Oracle Applications (MUST)
Company: Big MNC
Profiles:
1.Oracle Apps Functional Financials with Project Accounting
2.Oracle Apps Technical with Financial Module
3.Oracle Apps Functional with Financial Module
Contact: +91-120-6518887, +91-8800841677, www.erpocean.com Email:- inquiry@erpocean.com

Unknown said...

Thanks for sharing such an interesting post. It is really worth following your blog. Keep sharing.

Oracle training in chennai

Unknown said...

Oracle OAF Online Training is provided with complete knowledge regarding all core concepts and it gives enough confidence by Smartmind Online Training. We can say Smartmind Online Training  is the best Oracle OAF Training platform for freshers because here we start every concept from the ground level and we explain concepts by taking real time scenarios, so Students get good understanding about subject. Smartmind Online Training  helps you to gain depth knowledge on Oracle OAF  and it makes you ready to become a real time Software Developers
Oracle OAF Online Training

Sekhar Byna said...

Very intersting notes on ebusiness Suite
Please do share your articles like this.THis link also useful to Find info On Oracle apps-jobs,interview tips,Resume preparation,functional issuesOracle eBusiness Suite

Unknown said...

Nice post. PHP is one of the server side scripting language mainly used for designing website. So learning PHP Training in Chennai is really useful to make a better career.
Regards..
Html5 Training in Chennai

Unknown said...

Excellent post. Android is an open source operating system used for tablet computers and smartphones. If your are interested to develop creative mobile applications then you must learn about android OS. Its helpful for you.

Regards..
Android Training in Chennai

S M Consultants said...

Nice post. Your article is very useful and informative...a big thanks for sharing this.
S&M consultants

Unknown said...

Wonderful tips, very helpful well explained. Your post is definitely incredible. I will refer this to my friend.
SalesForce Training in Chennai

Unknown said...
This comment has been removed by the author.
Unknown said...

It is really very helpful for us and I have gathered some important information from this blog.If anyone wants to Selenium Training in Chennai reach Greens Technology training and placement academy.
selenium Training in Chennai

Unknown said...

Interesting and most useful topic for me. Our training programmes are flexible and customized to make sure that every individual gains the maximum out of the training. Android Training in Chennai |
Android Training in Chennai |
Android Training in Chennai |

ERP said...

we have almost all country students as our subscribers for online course.We have 10+ years of experience we can serve various ascent people. oracle fusion Cloud HCM online training at erptree.com is worlds best online training center. we have excelent knowledge sharing Platform we have user friendly website where you will be provided with all the required details and Self-paced DEMO videos. we have our branches in pune, gurgaon, noida, india, usa, uk, uae, oracle fusion hcm training, fusion Procurement training, fusion hcm, scm training


Oracle Fusion HCM Training

ciitnoida said...

Ciitnoida provides Core and java training institute in

noida
. We have a team of experienced Java professionals who help our students learn Java with the help of Live Base Projects. The object-

oriented, java training in noida , class-based build

of Java has made it one of most popular programming languages and the demand of professionals with certification in Advance Java training is at an

all-time high not just in India but foreign countries too.

By helping our students understand the fundamentals and Advance concepts of Java, we prepare them for a successful programming career. With over 13

years of sound experience, we have successfully trained hundreds of students in Noida and have been able to turn ourselves into an institute for best

Java training in Noida.

java training institute in noida
java training in noida
best java training institute in noida
java coaching in noida
java institute in noida

Anonymous said...

It is very interesting to learn from to easy understood. Thank you for giving information. Please let us know and more information get post to link.


Weblogic Server 12cR2 Training

dssd said...

BCA Colleges in Noida

CIIT Noida provides Sofracle Specialized B Tech colleges in Noida based on current industry standards that helps students to secure placements in their dream jobs at MNCs. CIIT provides Best B.Tech Training in Noida. It is one of the most trusted B.Tech course training institutes in Noida offering hands on practical knowledge and complete job assistance with basic as well as advanced B.Tech classes. CIITN is the best B.Tech college in Noida, greater noida, ghaziabad, delhi, gurgaon regoin .

At CIIT’s well-equipped Sofracle Specialized M Tech colleges in Noida aspirants learn the skills for designing, analysis, manufacturing, research, sales, management, consulting and many more. At CIIT B.Tech student will do practical on real time projects along with the job placement and training. CIIT Sofracle Specialized M.Tech Classes in Noida has been designed as per latest IT industry trends and keeping in mind the advanced B.Tech course content and syllabus based on the professional requirement of the student; helping them to get placement in Multinational companies (MNCs) and achieve their career goals.

MCA colleges in Noida we have high tech infrastructure and lab facilities and the options of choosing multiple job oriented courses after 12th at Noida Location. CIIT in Noida prepares thousands of engineers at reasonable B.Tech course fees keeping in mind training and B.Tech course duration and subjects requirement of each attendee.

Engineering College in Noida"

seo said...

really Informative Blog.The Best Blog I Have Seen in the recent times Providing quality information about online it courses,we provide Urgent Care Services in chicago.Thanks For Sharing knowledge With Us.Really Thanks for Posting.I Just Want to share this blog with my friend's and family.Worth able blog.

Unknown said...

I believe there are many more pleasurable opportunities ahead for individuals that looked at your site..

Embedded training in chennai | Embedded training centre in chennai | Embedded system training in chennai | PLC Training institute in chennai | IEEE final year projects in chennai | VLSI training institute in chennai

Unknown said...

This Blog is very helpful and useful, came to know that I should be strong in my basics and this blog helps me to improve it, US Medical Residency in Chicago Services Provided by Us. Thanks For Posting.

Unknown said...

This Blog Provides Very Useful and Important Information. I just Want to share this blog with my friends and family members. Tibco Certification Training

svrtechnologies said...

Really A great informative blog post this blog provides only valuable information on Mulesoft Certification Training .Thanks For Sharing.

24Layouts said...

Thanks For Posting and Sharing With US.......

Vizag Real Estate

rama said...

Very nice post here and thanks for it .I always like and such a super contents of these post.Excellent and very cool idea and great content of different kinds of the valuable information's.
Good discussion. Thank you.
Anexas
Six Sigma Training in Abu Dhabi
Six Sigma Training in Dammam
Six Sigma Training in Riyadh

Suba said...

Thank you for sharing such valuable information and tips. This can give insights and inspirations for us; very helpful and informative! Would love to see more updates from you in the future.
FITA
Selenium Training in Chennai
Java training course in chennai
J2EE Training in Chennai
ios developer training in chennai
Best ios Training institute in Chennai

Prityyou said...

Awwsome informative blog ,Very good information thanks for sharing such wonderful blog with us ,after long time came across such knowlegeble blog. keep sharing such informative blog with us.
Aviation Academy in Chennai | Aviation Courses in Chennai | Best Aviation Academy in Chennai | Aviation Institute in Chennai | Aviation Training in Chennai

Shadeep Shree said...

Really great blog… Thanks for your useful information.
Spoken English Class in Coimbatore
Best Spoken English Classes in Coimbatore
Spoken English in Coimbatore
Spoken English Institute
Spoken English Training Institute


gowsalya said...

Really you have done great job,There are may person searching about that now they will find enough resources by your post
Online DevOps Certification Course - Gangboard

Mounika said...

Really you have done great job,There are may person searching about that now they will find enough resources by your post
python interview questions and answers | python tutorialspython course institute in electronic city

Unknown said...

Really it was an awesome article. very interesting to read.
Thanks for sharing.
Tableau Training in Chennai
Tableau Course in Chennai
Tableau Certification in Chennai
Tableau Training Institutes in Chennai
Tableau Certification
Tableau Training
Tableau Course

nivatha said...

Really great post, I simply unearthed your site and needed to say that I have truly appreciated perusing your blog entries.
Data Science Training in Chennai | Data Science Training institute in Chennai | Data Science course in anna nagar

Data Science course in chennai | Data Science Training institute in Chennai | Best Data Science Training in Chennai | Data science course in Bangalore | Data Science Training institute in Bangalore | Best Data Science Training in Bangalore

Data Science course in marathahalli | Data Science training in Bangalore | Data Science course in btm layout | Data Science training in Bangalore

Unknown said...

Thanks for sharing from JNTU99 i just want to share this information with my friends. Thanks for sharing...

LindaJasmine said...

Awesome Post. It was a pleasure reading your article. Thanks for sharing.
Pega training institutes
Pega training courses
Pega administrator training
Pega testing training
Pega software training
Pega software course

Anbarasan14 said...

Nice post. Thanks for sharing.

TOEFL Training in Tambaram
TOEFL Coaching Classes in Guduvanchery
TOEFL Coaching Centres at Tambaram
TOEFL Classes in Chennai OMR
TOEFL Coaching Classes in Siruseri Chennai
TOEFL Course in Karapakkam
TOEFL Training near me

jefrin said...

Great post thanks for the post
azure certification training class in chennai

karthick said...

Very Clear Explanation. Thank you to share this
Python Course in Chennai

TNK Design Desk said...

Very useful and informative blog. Thank you so much for these kinds of informative blogs.
who provides seo services, web development services, logo design services, graphic design ,
digital markeing and all kind of web design, development and digital marketing services.
best website design services in gurgaon
web company in delhi
web desiging company
web design & development banner
web design & development company
web design & development services
web design agency delhi
web design agency in delhi
web design and development services
web design companies in delhi
web design company delhi
web design company in delhi
web design company in gurgaon
web design company in noida
web design company list
web design company services
web design company website
web design delhi
web design development company
web design development services
web design in delhi
web design service
web design services company
web design services in delhi
web designer company
web designer delhi
web designer in delhi
web designers delhi
web designers in delhi
web designing & development
web designing advertisement
web designing and development
web designing and development company
web designing and development services
web designing companies in delhi
web designing company delhi
web designing company in delhi
web designing company in gurgaon
web designing company in new delhi
web designing company in noida
web designing company logo
web designing company sites
web designing company websites
web designing delhi
web designing in delhi
web designing in gurgaon
web designing in gurgaon
web designing service
web designing services
web designing services delhi

hari said...

very good
inplant training in chennai
inplant training in chennai for it
Bermuda web hosting
Botswana hosting
armenia web hosting
dominican republic web hosting
iran hosting
palestinian territory web hosting
iceland web hosting

Devi said...

Amazing article this is and very informative thank you. oracle training in chennai

digital marketing course said...

Best Digital Marketing Course In Bhopal

Subhagruha Projects said...

Excellent blog. Lots of useful information here, thanks for your effort!
Real Estate plots in Vizag

Christy Bryan said...

We make getting an offer to sell your broken laptop quick and easy. We'll collect it free of charge, wipe the data from your hard drive and, in many cases, pay you for it! Please get more info on disposing of old laptops.