<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
  PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en-us" xml:lang="en-us">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="copyright" content="(C) Copyright Eclipse contributors 2005, 2006" />
<meta name="DC.rights.owner" content="(C) Copyright Eclipse contributors 2005, 2006" />
<meta name="security" content="public" />
<meta name="Robots" content="index,follow" />
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
<meta name="DC.Type" content="task" />
<meta name="DC.Title" content="Create a Method Configuration" />
<meta name="DC.Relation" scheme="URI" content="methodconfigurations.html#methodconfigurations" />
<meta name="DC.Relation" scheme="URI" content="methodplugin.html" />
<meta name="DC.Relation" scheme="URI" content="methodcontentpackage.html#methodcontentpackage" />
<meta name="DC.Relation" scheme="URI" content="createamethodplugin.html" />
<meta name="DC.Relation" scheme="URI" content="methodconfigurations.html" />
<meta name="DC.Format" content="XHTML" />
<meta name="DC.Identifier" content="createamethodconfiguration" />
<meta name="DC.Language" content="en-us" />
<!-- 
    Copyright (c) 2005, 2006 IBM Corporation and others.
    All rights reserved. This program and the accompanying materials
    are made available under the terms of the Eclipse Public License v1.0
    which accompanies this distribution, and is available at
    http://www.eclipse.org/legal/epl-v10.html
    Contributors:
    IBM Corporation - initial implementation
-->
<link rel="stylesheet" type="text/css" href="./ibmdita.css" />
<title>Create a Method Configuration</title>
</head>
<body id="createamethodconfiguration"><a name="createamethodconfiguration"><!-- --></a>

<h1 class="topictitle1">Create a Method Configuration</h1>
<div><div class="p"><p>A method configuration allows you to select and deselect from the
content packages and process available in the method library's set of plug-ins.
The selections you make help you narrow down the content you are really interested
in working with, as well as determine the content of the Web site you ultimately
publish to deploy your process. A configuration is given a name and then saved
so it can be changed and then re-published at a later date.</p>
Before creating
a method configuration, assess your needs and goals for the configuration.</div>
<div class="section">There are two ways to create a method configuration:<a name="createamethodconfiguration__create"><!-- --></a><ul id="createamethodconfiguration__create"><li>Create a new method configuration from scratch.</li>
<li>Create a method configuration by copying an existing configuration.</li>
</ul>
<strong>To create a new method configuration from scratch:</strong></div>
<ol><li class="stepexpand"><span>Make sure you are working in the <a href="authoringperspective.html#authoringperspective">Authoring Perspective</a>.</span></li>
<li class="stepexpand"><span>In the Library view, right click the <strong>Configurations</strong> folder
and then select <strong>New &gt; Method Configuration</strong>. Your new configuration
is created and the configuration editor is opened.</span></li>
<li class="stepexpand"><span>In the configuration editor window, type a name for your configuration
in the <strong>Name</strong> field. If you click anywhere in the <a href="libraryview.html#libraryview">Library View</a> or <a href="configurationview.html">Configuration View</a>, you
will be able to see your new configuration name in the Configurations folder
in the Library view tree.</span></li>
<li class="stepexpand"><span>Type a description for your configuration in the Description field,
and then select <strong>File &gt; Save All</strong> to save your new method configuration.</span></li>
<li class="stepexpand"><span>At the bottom of the editor window, click the <strong>Plug-in and Package
Selection</strong> tab. </span></li>
<li class="stepexpand"><span>The method configuration selection section displays a list of all
method plug-ins their content packages and processes. Use the check boxes
to add or remove plug-ins, packages, and processes to or from your configuration.
Expand each plug-in to select and deselect individual packages and processes.</span> <p>As you make your selections, warning signs may appear against
some of the plug-in and package names, and the Configuration Warning Log view
may be displayed. These warnings are intended to help ensure that you create
a configuration that "makes sense".</p>
<p>If you reference an element in a
package that is from another package, you can only see the full details for
that element in a published Web site if the package containing the element
is in the configuration. If the package containing the element is not in the
configuration, the "offending" package is marked with a warning sign. You
may choose not to include the full details of a referenced element. Click
the <strong>Add Missing References</strong> button to automatically and recursively
add packages containing any elements that are referenced in already selected
packages. Since this is recursive, a large number of packages may be added,
perhaps making your configuration larger than you want it to be.</p>
<p>If
you have elements in a package that contribute to, extend, or replace elements
in another package, it is an error if the base package is not included in
the configuration. Errors are marked with a red cross. If you drill down into
a plug-in or package marked with a cross you will discover the "offending"
package and then you can find the packages you need to include to resolve
the error. Alternatively you can click the <strong>Make closure by fixing errors</strong> button
to automatically fix the errors by adding the missing base packages.</p>
<p>The
Configuration Warning Log lists and explains all errors and warnings in the
configuration.</p>
</li>
<li class="stepexpand"><span>Select <strong>File &gt; Save All</strong></span></li>
<li class="stepexpand"><span>Define the views for the method configuration. A view is a navigation
tree browser in a published configuration. Every published configuration can
have several views that are displayed as stacked tree browser tabs. The structure
of the view is defined as a Custom Category.</span><ol type="a"><li><span>In the Configuration Editor, click the <strong>Views</strong> tab.</span></li>
<li><span>Click the <strong>Add View</strong> button. The Select Categories dialog
appears.</span></li>
<li><span>If needed, click the (+) sign to expand the Custom Categories
folder and then select the category you want to use as your view. Click the
(+) sign to expand your chosen category and view it's contents. Press and
hold the CTRL key to select multiple views.</span></li>
<li><span>Click <strong>OK</strong>. The dialog window disappears and the views
you selected are added to the Configuration.</span></li>
</ol>
</li>
<li class="stepexpand"><span>Select the view you want to display as your configuration's start-up
view and then click the <strong>Make Default</strong> button. The start-up view is the
first view shown when a published configuration is displayed for the first
time.</span></li>
<li class="stepexpand"><span>Click <strong>File &gt; Save all</strong> to save your configuration.</span></li>
</ol>
<div class="section"><strong>To create a method configuration by copying an existing configuration</strong>:<ol><li>Make sure you are working in the <a href="authoringperspective.html#authoringperspective">Authoring Perspective</a>.<p></p>
</li>
<li>In the <a href="libraryview.html#libraryview">Library View</a>,
expand the Configurations folder.<p></p>
</li>
<li> Right click the method configuration you want to copy and then click <strong>Copy</strong>.<p></p>
</li>
<li>Right click the <strong>Configurations</strong> folder and then click <strong>Paste</strong>.
Type a name for the new configuration in the pop-up window. The copied method
configuration is pasted into the Configurations folder.<p></p>
</li>
<li>Double click the newly pasted method configuration to open its configuration
editor.<p></p>
</li>
<li>Follow steps 3 through 10 in <strong>To Create a New Method Configuration from
Scratch</strong> above to continue.</li>
</ol>
</div>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="methodconfigurations.html">Method Configuration</a></div>
</div>
<div class="relconcepts"><strong>Related concepts</strong><br />
<div><a href="methodconfigurations.html#methodconfigurations">Method Configuration</a></div>
<div><a href="methodplugin.html">Method Plug-in</a></div>
<div><a href="methodcontentpackage.html#methodcontentpackage">Method Content Package</a></div>
</div>
<div class="reltasks"><strong>Related tasks</strong><br />
<div><a href="createamethodplugin.html">Create a Method Plug-in</a></div>
</div>
</div>
</body>
</html>
