[JBoss AS 7 Development] - Command Line Interface
by Stan Silvert
Stan Silvert [https://community.jboss.org/people/ssilvert] modified the document:
"Command Line Interface"
To view the document, visit: https://community.jboss.org/docs/DOC-16581
--------------------------------------------------------------
The AS7 Command Line Interface (CLI) is a command line management tool for the AS 7 domain or a standalone server. It allows a user to connect to the AS7 domain controller or a standalone server and execute management operations available through the https://community.jboss.org/docs/DOC-16317 AS7 detyped management model. Depending on the operation system, the CLI is launched using jboss-admin.sh or jboss-admin.bat located in the AS7 bin directory.
h2. Features
The CLI features include:
* connect to the specific controller or server instance by specifying the host and the port;
* send operation requests (providing the managed component's address, attribute or operation name and parameters) following the https://community.jboss.org/docs/DOC-16317 AS7 detyped management model;
* view the available managed components, their attributes and operations;
* tab-completion for commands and operation requests;
* history of the executed commands and operation requests;
* https://community.jboss.org/docs/DOC-16769 deploy and undeploy packages at runtime in standalone and domain modes;
* https://community.jboss.org/docs/DOC-16728 batch mode;
* https://community.jboss.org/docs/DOC-17041 non-interactive mode;
* https://community.jboss.org/docs/DOC-16981 generic resource type commands and custom commands;
* https://community.jboss.org/docs/DOC-17457 GUI mode;
* https://community.jboss.org/docs/DOC-17597 CLI public API;
* https://community.jboss.org/docs/DOC-18726 system properties in operations and commands;
* https://community.jboss.org/docs/DOC-18731 try-catch-finally control flow;
* https://community.jboss.org/docs/DOC-18764 if-else control flow
* https://community.jboss.org/docs/DOC-18795 Single jar for remote clients
* https://community.jboss.org/docs/DOC-18796 Advanced CLI scripting with Groovy, Rhino, Jython, etc.
h2. Commands
There are commands and operations. They are different. Operations are considered a low level but comprehensive way to manage the AS controller, i.e. if it can't be done with operations it can't be done in any other way.
Commands, on the other hand, are more user-friendly in syntax, although most of them still translate into operation requests and some of them even into a few composite operation requests, i.e. commands also simplify some management operations from the user's point of view.
To see all the list of all the supported commands enter command +help --commands+. Another way to list all the supported commands is to press the tab key at the command line prompt which will trigger the tab-completion for the commands. The list of the available commands depends on the current context, i.e. it may change since some of the commands may require an established connection to the AS controller, or the presence of a certain node address in the domain management model, etc. For example, if the server configuration doesn't include messaging subsystem then the CLI will not expose messaging related commands.
To see a detailed description of a specific command, execute the command with +--help+ as the argument.
h3. Connection
The first thing to do after the CLI has started is to connect to a managed AS7 instance. This is done using the command +connect+, e.g.
+connect+
which is equivalent to
+connect localhost:9999+
localhost:9999 is the default host and port combination for the AS7 model controller client. Both, the host and the port, are optional parameters and can be specified together or separately.
h3. Quit
To terminate the session type +quit+.
h2. Operation requests
Operation requests is considered a raw low level way to manage things. Normally, for convenience and friendliness users would use commands instead of operations. Although, there might be cases when operations can be more convenient or even the only way to do something.
The format of the CLI operation requests is described in detail in https://community.jboss.org/docs/DOC-17599 The Format of the Command-line Operation Requests. And another useful article is https://community.jboss.org/docs/DOC-17944 The Command-line Compound Parameter Value Format.
Operation requests can be long and verbose. But the tab-completion can help at almost any point.
To syntactically disambiguate between the commands and operations, operations require one of the following prefixes:
* +:+ - to execute an operation against the current node, e.g.
[standalone@localhost:9999 subsystem=web] :read-resource(recursive=true)
+
+
* +./+ - to execute an operation against a child node of the current node, e.g.
[standalone@localhost:9999 subsystem=web] ./connector=http:read-resource
i.e. the full address of the operation will be +subsystem=web,connector=http+.
* +/+ - to execute an operation against the root node, e.g.
[standalone@localhost:9999 subsystem=web] /:read-resource
or its child, e.g.
[standalone@localhost:9999 subsystem=web] /subsystem=logging:read-resource
h3. How the tab-completion works
Suppose, the cursor is positioned at the beginning of an empty line. If you type in +'./'+ and press the tab key, you will get a list of all the available node types. After selecting the node type you want and adding '=', pressing the tab key again will result in a list of all the node names available for the chosen node type. If, after selecting the node name from the list, you want to continue with the node path then add ',' after the selected node name and press the tab key again. This will print all the available node types for the previously select node.
After you are done with the node path, adding ':' at the end of the node path and pressing the tab key will print all the available operation names for the selected node.
To see all the parameters of the operation, add '(' after the operation name and press the tab key. Choose the parameter you want and specify its value after '='. Tab-completion for parameter values is not supported (yet?). If you want to add more parameters, add ',' and press the tab key to see the rest of the available parameter names.
Finally, when all the parameters have been specified, add ')' and press enter.
In the node path you can use the following strings for navigations:
* .. - parent node, e.g.
[standalone@localhost:9999 /] ./subsystem=web/../subsystem=transactions
is equivalent to
[standalone@localhost:9999 /] ./subsystem=transactions
* +.type+ - the type of the current node, e.g.
[standalone@localhost:9999 /] ./subsystem=web/.type/transactions
is equivalent to the same
[standalone@localhost:9999 /] ./subsystem=transactions
h2. Current node path and navigation
The current node path is indicated in the command line prompt. The default value is '/', i.e. the root node. All the operation requests that don't contain the address part will be executed against the current node path.
h4. Change node command (cn or cd)
+cn+, or +cd+, command allows you to change the current node path, e.g.
[host:port /] cd subsystem=web
After that the command line prompt will change to
[host:port /subsystem=web]
and every operation entered w/o the node path will be executed against the node +subsystem=web+. If you do specify a node path for the operation, it will be considered relative to +subsystem=web+.
The node path might not necessarily end on a node name. It might be just
[host:port /] cd subsystem
[host:port /subsystem]
Then to execute an operation against the logging subsystem you would type in
[host:port /subsystem] logging:read-resource
To go back to the root node, type in
[host:port /subsystem] cd /
[host:port /]
You can also navigate to the parent node
[host:port /subsystem=web,connector=http] cd ..
[host:port /subsystem=web]
or the node type
[host:port /subsystem=web] cd .type
[host:port /subsystem]
h4. List contents command (ls)
+ls+ command will list the contents of a node path. The command has an optional node path argument. If the argument is specified, the command will print the contents of the node path specified in the argument. If the argument is not specified, the command will print the contents of the current node path (indicated in the prompt).
If the node path ends on a node type then the contents will be the child node names. If the node path ends on a node name then the contents will be the child node types.
If the contents of the node path is empty, nothing will be printed.
Example:
[localhost:9999 /subsystem=web] ls
virtual-server connector
[localhost:9999 /subsystem=web] ls connectorhttp
[localhost:9999 /subsystem=web]
h2. Special characters in node names
White ':' and '/' have special significance for in the format of the operation request, these characters aren't disallowed in node names.
If they are typed in though, the operation request parser will be confused and will probably result it an error. To workaround this issue you should quote the names with special characters, e.g.
[localhost:9999 /subsystem=datasources] cd data-source="java:/H2DS"
[localhost:9999 /subsystem=datasources/data-source=java:/H2DS]
The node name, actually, is also allowed to contain '"'. In case the node name has to be quoted and it also contains quotes in its content then the quotes that are a part of the node name content have to be escaped using, i.e. '\"'.
[localhost:9999 /] cd nodetype="node:name/with\"quotes\""
[localhost:9999 /node:name/with"quotes"]
Note, that the tab-completion takes care of this automatically.
h3. Command history
Command (and operation request) history is enabled by default. The history is kept both: in-memory and in a file on the disk, i.e. it is preserved between the command line sessions. The history file name is .jboss-cli-history and is automatically created in the user's home directory. When the command line interface is launched this file is read and the in-memory history is initialized with its content.
While in the command line session, you can use the arrow keys to go back and forth in the history of commands and operations. To manipulate the history you can use +history+ command.
If executed w/o the argument, it will print all the recorded commands and operations (up to the configured maximum, which is by default 500) from the in-memory history.
+history+ supports three optional arguments:
* disable - will disable history expansion (but will not clear the previously recorded history);
* enabled - will re-enable history expansion (starting from the last recorded command before the history expansion was disabled);
* clear - will clear the in-memory history (but not the file one).
--------------------------------------------------------------
Comment by going to Community
[https://community.jboss.org/docs/DOC-16581]
Create a new document in JBoss AS 7 Development at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=102&c...]
12 years, 9 months
[JBoss Transactions Development] - Narayana Release Process
by Paul Robinson
Paul Robinson [https://community.jboss.org/people/paul.robinson] modified the document:
"Narayana Release Process"
To view the document, visit: https://community.jboss.org/docs/DOC-17433
--------------------------------------------------------------
This page provides a list of instructions that must be done *in order* when doing a release of Narayana.
h2. Check JIRA
Ensure all issues are resolved. Any outstanding issues must be pushed back or resolved.
h2. Check Hudson
Ensure no test failures in the following group of hudson tests:
|| *4.16 Branch
* || *5 Branch*
||
| http://albany/view/Narayana+BlackTie/job/jbossts-branch416-java6/ | http://albany/job/narayana-java6 |
| http://albany/view/Narayana+BlackTie/job/jbossts-branch416-java7/ | http://albany/job/narayana-java7 |
h2. Do Release
h5. 4.16 Branch
#Make sure your checkout has no local changes
svn update
svn status
#Update the version in text files
find . -name \*.java -o -name \*.xml -o -name \*.ent -o -name \INSTALL -o -name \README | grep -v ".svn" | grep -v target | xargs grep -l "4[._]16" | xargs sed -i "s/4\([._]\)16\([._]\)4\([._]\)Final-SNAPSHOT/4\116\24\3Final/"
svn commit -m "Updated to version 4.16.4.Final"
#Tag the release:
svn cp https://svn.jboss.org/repos/labs/labs/jbosstm/branches/JBOSSTS_4_16 https://svn.jboss.org/repos/labs/labs/jbosstm/tags/JBOSSTS_4_16_4_Final/ -m "4.16.4"
#Build and deploy the release to nexus staging:
ant -f build-release-pkgs.xml dist mvn-repository downloads magnolia
#Bump to next version using similar find to above
find . -name \*.java -o -name \*.xml -o -name \*.ent -o -name \INSTALL -o -name \README | grep -v ".svn" | grep -v target | xargs grep -l "4[._]16" | xargs sed -i "s/4\([._]\)16\([._]\)4\([._]\)Final/4\116\25\3Final-SNAPSHOT/"
svn commit -m "Updated to version 4.16.5.Final-SNAPSHOT"
#Update the maven version of jbossts in our fork of JBossAS: https://github.com/jbosstm/jboss-as
sed -i "s/4.16.4.Final-SNAPSHOT/4.16.5.Final-SNAPSHOT/g" pom.xml
git commit - am "Updated to 4.16.5.Final-SNAPSHOT"
git push
h5. 5 Branch
#Make sure your checkout has no local changes
git checkout master
git status
#Pull remote changes
git fetch
git rebase -i master
#Update the version in text files
CHANGE:
find . -name \*.java -o -name \*.xml -o -name \*.ent -o -name \INSTALL -o -name \README | grep -v ".svn" | grep -v target | xargs grep -l "4[._]16" | xargs sed -i "s/4\([._]\)16\([._]\)4\([._]\)Final-SNAPSHOT/4\116\24\3Final/"
svn commit -m "Updated to version 4.16.4.Final"
#Tag the release:
TODO
#Build and deploy the release to nexus staging:
CHANGE:
ant -f build-release-pkgs.xml dist mvn-repository downloads magnolia
#Bump to next version using similar find to above
CHANGE:
find . -name \*.java -o -name \*.xml -o -name \*.ent -o -name \INSTALL -o -name \README | grep -v ".svn" | grep -v target | xargs grep -l "4[._]16" | xargs sed -i "s/4\([._]\)16\([._]\)4\([._]\)Final/4\116\25\3Final-SNAPSHOT/"
svn commit -m "Updated to version 4.16.5.Final-SNAPSHOT"
#Update the maven version of jbossts in our fork of JBossAS: https://github.com/jbosstm/jboss-as
CHANGE:
sed -i "s/4.16.4.Final-SNAPSHOT/4.16.5.Final-SNAPSHOT/g" pom.xml
git commit - am "Updated to 4.16.5.Final-SNAPSHOT"
git push
h2. Release Quickstarts and Docs
Todo
h2. Release the artifact through Nexus
1. https://repository.jboss.org/nexus/index.html#welcome https://repository.jboss.org/nexus/index.html#welcome
2. login
3. "Staging Repositories"
4. Click tickbox for your repo
5. Click "Close"
6. Dont worry about a description, just click "Close"
7. Click tickbox after it is closed
8. Click "Release"
9. Again a description doesn't matter
h2. Upload the distribution jbosstm(a)filemgmt.jboss.org < WORK IN PROGRESS >
1. export VERSION=5.0.0.M2
2. mkdir ~/filemgmt.jboss.org/
3. sshfs mailto:jbosstm@filemgmt.jboss.org jbosstm(a)filemgmt.jboss.org: ~/filemgmt.jboss.org/
4. mkdir -p ~/filemgmt.jboss.org/downloads_htdocs/jbosstm/$VERSION/binary
5. mkdir -p ~/filemgmt.jboss.org/downloads_htdocs/jbosstm/$VERSION/src
6. mkdir -p ~/filemgmt.jboss.org/docs_htdocs/jbosstm/$VERSION/api/
7. mkdir -p ~/filemgmt.jboss.org/docs_htdocs/jbosstm/$VERSION/guides/
8. Upload the build files to those folders
h2. JIRA Release
1. Mark as released.
h2. Push Upstream
If appropriate for this release, create a new 'component update' issue in AS7 JIRA. Ensure the module is set to 'transactions' and select an appropriate 'fix for'.
Assign it to yourself
Resolve the work and raise the pull request
1. https://issues.jboss.org/browse/AS7 https://issues.jboss.org/browse/AS7
2. cd AS source
3. git checkout -b AS7-<JIRANUMBER>
4. sed -i "s/4.16.3.Final/4.16.4.Final/g" pom.xml
5. git commit -am "AS7-<JIRA> Updated to 4.16.4.Final"
6. git push
7. Raise a pull request
h2. Update Website
Update the Narayana community site:
* Documentation
* Downloads
* Magnolia (using file generated in build-release-pkgs.xml), also update the front page announcement and the release notes link
h2. Promote
NOTE: It is worth waiting for the merge of the pull request before advertising, or at least wait for the merge build notification first ;)
Promote the release through the following channels:
1. Email jbossts-announce(a)lists.jboss.org (mailto:jbossts-announce@lists.jboss.org)
2. Forum
3. Blog - as appropriate
--------------------------------------------------------------
Comment by going to Community
[https://community.jboss.org/docs/DOC-17433]
Create a new document in JBoss Transactions Development at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=102&c...]
12 years, 9 months
[jBPM Development] - Problems with JBPM 5.3
by Sachin Chandra
Sachin Chandra [https://community.jboss.org/people/chandrasachin16] created the discussion
"Problems with JBPM 5.3"
To view the discussion, visit: https://community.jboss.org/message/749671#749671
--------------------------------------------------------------
Hi All,
I have been working with JBPM 5.2 for quite sometime and currently started with 5.3. I had explored a link ( http://mswiderski.blogspot.in/2012/05/jbpm-53-brings-ldap-into-picture.html ) which tells that JBPM 5.3 can be integerated with LDAP .I had gone through the link and also explored the JBOSS AS 7 document for configuring with LDAP.I am trying to integerate JBPM 5.3 with Microsoft Active Directory, however I am facing some problems. As mentioned in the document I had configured my standalone.xml with the following :
<security-domain name="jbpm-console" cache-type="default">
<authentication>
<login-module code="org.jboss.security.auth.spi.LdapExtLoginModule" flag="required">
<module-option name="java.naming.factory.initial" value="com.sun.jndi.ldap.LdapCtxFactory"/>
<module-option name="java.naming.provider.url" value="ldap://IPAddress:389"/>
<module-option name="java.naming.security.authentication" value="simple"/>
<module-option name="bindDN" value="CN=Sachin Chandra,CN=Users,DC=performixpune,DC=com"/>
<module-option name="bindCredential" value="myuser345"/>
<module-option name="baseDN" value="CN=Users,DC=performixpune,DC=com"/>
<module-option name="baseFilter" value="(sAMAccountName={0})"/>
<module-option name="rolesCtxDN" value="CN=Users,DC=performixpune,DC=com"/>
<module-option name="roleAttributeID" value="memberOf"/>
<module-option name="roleAttributeIsDN" value="true"/>
<module-option name="roleFilter" value="(member={1})"/>
<module-option name="searchScope" value="SUBTREE_SCOPE"/>
<module-option name="throwValidateError" value="true"/>
<module-option name="allowEmptyPasswords" value="true"/>
</login-module>
</authentication>
</security-domain>
My Active directory ldif file is somewhat like given below ----- :
dn: CN=Sachin Chandra,CN=Users,DC=performixpune,DC=com
changetype: add
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: user
cn: Sachin Chandra
sn: Chandra
givenName: Sachin
distinguishedName: CN=Sachin Chandra,CN=Users,DC=performixpune,DC=com
instanceType: 4
whenCreated: 20120711110150.0Z
whenChanged: 20120711110209.0Z
displayName: Sachin Chandra
uSNCreated: 163824
uSNChanged: 163830
name: Sachin Chandra
objectGUID:: BNoV31Y1eE6kBwd2Bks64w==
userAccountControl: 66048
badPwdCount: 0
codePage: 0
countryCode: 0
badPasswordTime: 129870781036451250
lastLogoff: 0
lastLogon: 129870781158638750
pwdLastSet: 129864781106588750
primaryGroupID: 513
objectSid:: AQUAAAAAAAUVAAAAVIqQajNW1nCni/tpyAQAAA==
accountExpires: 9223372036854775807
logonCount: 0
sAMAccountName: sachinc
sAMAccountType: 805306368
objectCategory: CN=Person,CN=Schema,CN=Configuration,DC=performixpune,DC=com
dSCorePropagationData: 16010101000000.0Z
I am able to start my server without any problems.My ear files are getting deployed but I am not able to login into my JBPM console .My server log shows the following error -------
13:01:18,842 INFO [solder-servlet] (MSC service thread 1-1) Catch Integration for Servlets enabled
13:01:18,877 INFO [org.jboss.web] (MSC service thread 1-1) registering web context: /drools-guvnor
13:01:19,052 INFO [org.jboss.as.server.controller] (DeploymentScanner-threads - 2) Deployed "jbpm-human-task-war.war"
13:01:19,052 INFO [org.jboss.as.server.controller] (DeploymentScanner-threads - 2) Deployed "jbpm-gwt-console.war"
13:01:19,053 INFO [org.jboss.as.server.controller] (DeploymentScanner-threads - 2) Deployed "jbpm-gwt-console-server.war"
13:01:19,053 INFO [org.jboss.as.server.controller] (DeploymentScanner-threads - 2) Deployed "jbpm-form-builder.war"
13:01:19,053 INFO [org.jboss.as.server.controller] (DeploymentScanner-threads - 2) Deployed "drools-guvnor.war"
13:01:19,053 INFO [org.jboss.as.server.controller] (DeploymentScanner-threads - 2) Deployed "designer.war"
13:02:53,430 ERROR [org.jboss.security.authentication.JBossCachedAuthenticationManager] (http-localhost-127.0.0.1-8080-2) Login failure: javax.security.auth.login.FailedLoginException: Password Incorrect/Password Required
at org.jboss.security.auth.spi.UsernamePasswordLoginModule.login(UsernamePasswordLoginModule.java:252) [picketbox-4.0.1.jar:4.0.1]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_24]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [:1.6.0_24]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [:1.6.0_24]
at java.lang.reflect.Method.invoke(Method.java:597) [:1.6.0_24]
at javax.security.auth.login.LoginContext.invoke(LoginContext.java:769) [:1.6.0_24]
at javax.security.auth.login.LoginContext.access$000(LoginContext.java:186) [:1.6.0_24]
at javax.security.auth.login.LoginContext$4.run(LoginContext.java:683) [:1.6.0_24]
at java.security.AccessController.doPrivileged(Native Method) [:1.6.0_24]
at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:680) [:1.6.0_24]
at javax.security.auth.login.LoginContext.login(LoginContext.java:579) [:1.6.0_24]
at org.jboss.security.authentication.JBossCachedAuthenticationManager.defaultLogin(JBossCachedAuthenticationManager.java:411) [picketbox-infinispan-4.0.1.jar:4.0.1]
at org.jboss.security.authentication.JBossCachedAuthenticationManager.authenticate(JBossCachedAuthenticationManager.java:345) [picketbox-infinispan-4.0.1.jar:4.0.1]
at org.jboss.security.authentication.JBossCachedAuthenticationManager.isValid(JBossCachedAuthenticationManager.java:154) [picketbox-infinispan-4.0.1.jar:4.0.1]
at org.jboss.as.web.security.JBossWebRealm.authenticate(JBossWebRealm.java:127) [jboss-as-web-7.0.2.Final.jar:7.0.2.Final]
at org.apache.catalina.authenticator.FormAuthenticator.authenticate(FormAuthenticator.java:280) [jbossweb-7.0.1.Final.jar:7.0.2.Final]
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:372) [jbossweb-7.0.1.Final.jar:7.0.2.Final]
at org.jboss.as.web.NamingValve.invoke(NamingValve.java:57) [jboss-as-web-7.0.2.Final.jar:7.0.2.Final]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:154) [jbossweb-7.0.1.Final.jar:7.0.2.Final]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) [jbossweb-7.0.1.Final.jar:7.0.2.Final]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) [jbossweb-7.0.1.Final.jar:7.0.2.Final]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:362) [jbossweb-7.0.1.Final.jar:7.0.2.Final]
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877) [jbossweb-7.0.1.Final.jar:7.0.2.Final]
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:667) [jbossweb-7.0.1.Final.jar:7.0.2.Final]
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:952) [jbossweb-7.0.1.Final.jar:7.0.2.Final]
at java.lang.Thread.run(Thread.java:662) [:1.6.0_24]
Caused by: java.lang.NullPointerException
at javax.naming.NameImpl.<init>(NameImpl.java:264) [:1.6.0_24]
at javax.naming.CompositeName.<init>(CompositeName.java:214) [:1.6.0_24]
at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:358) [:1.6.0_24]
at javax.naming.directory.InitialDirContext.search(InitialDirContext.java:267) [:1.6.0_24]
at org.jboss.security.auth.spi.LdapExtLoginModule.bindDNAuthentication(LdapExtLoginModule.java:471) [picketbox-4.0.1.jar:4.0.1]
at org.jboss.security.auth.spi.LdapExtLoginModule.createLdapInitContext(LdapExtLoginModule.java:431) [picketbox-4.0.1.jar:4.0.1]
at org.jboss.security.auth.spi.LdapExtLoginModule.validatePassword(LdapExtLoginModule.java:310) [picketbox-4.0.1.jar:4.0.1]
at org.jboss.security.auth.spi.UsernamePasswordLoginModule.login(UsernamePasswordLoginModule.java:249) [picketbox-4.0.1.jar:4.0.1]
I am able to access the Active directory using a client tool( Active Directory tool ) but with JBOSS it's not working . I have tried with different things but not able to trace what is the cause of this .Can anybody please guide me where am I going wrong.
Regards
Sachin
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/749671#749671]
Start a new discussion in jBPM Development at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 9 months
[PicketBox Development] - Challenge/Response enabled Authentication Framework
by Anil Saldhana
Anil Saldhana [https://community.jboss.org/people/anil.saldhana] created the discussion
"Challenge/Response enabled Authentication Framework"
To view the discussion, visit: https://community.jboss.org/message/749605#749605
--------------------------------------------------------------
Wondering if SASL is the perfect candidate for a challenge/response enabled authentication framework with multiple authentication mechanism support.
Wikipedia entry on http://en.wikipedia.org/wiki/Simple_Authentication_and_Security_Layer SASL.
Apart from a challenge/response framework, it has support for the following protocols.
h2.
A SASL mechanism implements a series of challenges and responses. Defined SASL mechanisms ^http://en.wikipedia.org/wiki/Simple_Authentication_and_Security_Layer#cite_note-0 [1]^ include:
* "EXTERNAL", where authentication is implicit in the context (e.g., for protocols already using http://en.wikipedia.org/wiki/IPsec IPsec or http://en.wikipedia.org/wiki/Transport_Layer_Security TLS)
* "ANONYMOUS", for unauthenticated guest access
* "PLAIN", a simple http://en.wikipedia.org/wiki/Cleartext cleartext http://en.wikipedia.org/wiki/Password password mechanism. PLAIN obsoleted the LOGIN mechanism.
* "OTP", a http://en.wikipedia.org/wiki/One-time_password one-time password mechanism. OTP obsoleted the SKEY Mechanism.
* "SKEY", an http://en.wikipedia.org/wiki/S/KEY S/KEY mechanism.
* " http://en.wikipedia.org/wiki/CRAM-MD5 CRAM-MD5", a simple challenge-response scheme based on http://en.wikipedia.org/wiki/HMAC HMAC-MD5.
* " http://en.wikipedia.org/wiki/Digest_access_authentication DIGEST-MD5", http://en.wikipedia.org/wiki/HTTP HTTP Digest compatible challenge-response scheme based upon MD5. DIGEST-MD5 offers a data security layer.
* " http://en.wikipedia.org/wiki/SCRAM SCRAM", modern challenge-response scheme based mechanism with channel binding support
* " http://en.wikipedia.org/wiki/NTLM NTLM", an NT LAN Manager authentication mechanism
* " http://en.wikipedia.org/wiki/GSSAPI GSSAPI", for http://en.wikipedia.org/wiki/Kerberos_protocol Kerberos V5 authentication via the http://en.wikipedia.org/wiki/Generic_Security_Services_Application_Progra... GSSAPI. GSSAPI offers a data-security layer.
* http://en.wikipedia.org/wiki/MSN_Chat#GateKeeper_and_GateKeeperPassport GateKeeper (& http://en.wikipedia.org/wiki/MSN_Chat#GateKeeper_and_GateKeeperPassport GateKeeperPassport), a challenge-response mechanism developed by http://en.wikipedia.org/wiki/Microsoft Microsoft for http://en.wikipedia.org/wiki/MSN_Chat MSN Chat
The GS2 family of mechanisms supports arbitrary http://en.wikipedia.org/wiki/GSS-API GSS-API mechanisms in SASL. ^http://en.wikipedia.org/wiki/Simple_Authentication_and_Security_Layer#cite_note-1 [2]^ It is now standardized as http://tools.ietf.org/html/rfc5801 RFC 5801.
I consulted Darran about this and here are his thoughts.
(09:09:34 AM) anilsaldhana: darran: regarding a challenge/response based authentication framework, do u think sasl is sufficient?
(09:10:34 AM) anilsaldhana: darran: given that it has many possible protocols including silent
(09:11:50 AM) darran: asaldhan, from a non-HTTP perspective my feeling is yes, some of the Java provided APIs are not as easy / safe as they should be but the actual process at the transport level is good, we could optimise to do more concurrently but thats about it really
darran dehort
(09:13:07 AM) anilsaldhana: darran: right. I was asking mainly from non-http perspective.
(09:13:19 AM) anilsaldhana: darran: thanks for the guidance.
(09:13:53 AM) darran: a couple of API examples are CallbackHandler issues related to not clearly advertising what is supported or what is needed regarding callbacks, from a mechanism perspective there is also a lack of 'lifecycle' say to confirm success or failure of an auth process but all of these could be addressed without afecting the underlynig use of SASL
(09:14:42 AM) anilsaldhana: darran: of course.
h2.
PicketBox Core can natively support SASL. We will include darran's jboss-sasl project.
h2.
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/749605#749605]
Start a new discussion in PicketBox Development at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 9 months
[JBoss Tools Development] - How to Build JBoss Tools with Maven 3
by Mickael Istria
Mickael Istria [https://community.jboss.org/people/mickael_istria] modified the document:
"How to Build JBoss Tools with Maven 3"
To view the document, visit: https://community.jboss.org/docs/DOC-16604
--------------------------------------------------------------
**
#Environment_Setup Environment Setup
***
#Prerequisistes Prerequisistes
***
#Maven_and_Java Maven and Java
***
#Maven_settings Maven settings
***
#Maven__Java_Memory_Configuration Maven & Java Memory Configuration
**
#About_Target_Platform_and_related_profiles About Target Platform and related profiles
***
#Using_published_Target_Platform_definition_Recommanded Using published Target Platform definition (Recommanded)
***
#Getting_a_local_copy_of_the_Target_Platform_Recommanded Getting a local copy of the Target Platform (Recommanded)
****
#Set_up Set up
*****
#_Download_TP_as_a_zip_and_install_it_by_yourself Download TP as a zip and install it by yourself
*****
#OR_use_MavenAnt_to_get_it OR, use Maven+Ant to get it
****
#Use Use
***
#Or_resolving_remotely_with_the_Unified_Target_Platform Or resolving remotely with the Unified Target Platform
**
#Optional_Build_parent_and_target_platform (Optional) Build parent and target platform
**
#Building_Everything_In_One_Build_Locally_Via_Commandline Building Everything In One Build Locally Via Commandline
**
#Building_Individual_Components_Locally_Via_Commandline Building Individual Components Locally Via Commandline
***
#Build_a_component_resolving_to_a_recent_aggregation_build_for_other_JBT_dependencies_Recommanded Build a component resolving to a recent aggregation build for other JBT dependencies (Recommanded)
***
#Build_a_component_resolving_to_the_latest_CI_builds_for_other_JBT_dependencies Build a component resolving to the latest CI builds for other JBT dependencies
***
#Build_a_component_along_with_all_its_dependencies_from_sources_bootstrap_build Build a component along with all its dependencies from sources ("bootstrap" build)
**
#Building_Locally_In_Eclipse Building Locally In Eclipse
**
#Installation_Testing__making_sure_your_stuff_can_be_installed_ Installation Testing - making sure your stuff can be installed
**
#Adding_a_new_feature_or_plugin_to_an_existing_component Adding a new feature or plugin to an existing component
**
#Tips_and_tricks_for_making_BOTH_PDE_UI_and_headless_Maven_builds_happy Tips and tricks for making BOTH PDE UI and headless Maven builds happy
***
#Check_your_buildproperties Check your build.properties
***
#Check_your_manifestmf_dependencies Check your manifest.mf dependencies
+*This article is a replacement for its precursor, https://community.jboss.org/docs/DOC-15513 How to Build JBoss Tools 3.2 with Maven 3.*+
+*Note that this article only discusses building from trunk. If you need to build from a branch, or switch between branches and/or trunk, see* https://community.jboss.org/docs/DOC-17497 How to Build JBoss Tools With Maven3 - Working With Branches+*.*
*+Looking for how to build our documentation? See+ https://community.jboss.org/docs/DOC-13341 Building JBoss Tools Documentation.*
h2. Environment Setup
h3. Prerequisistes
1. Java 1.6 SDK
2. Maven 3.0.3
3. About 6 GB of free disk space if you want to run all integration tests for (JBoss AS, Seam and Web Services Tools) - *requires VPN access*
4. subversion client 1.6.X (should work with lower version as well, but newer versions may not work as expected)
h3. Maven and Java
Make sure your maven 3 is available by default and Java 1.6 is used.
mvn -version
should print out something like
*Apache Maven 3.0.3* (r1075438; 2011-02-28 12:31:09-0500)
*Java version: 1.6.0_25*, vendor: Sun Microsystems Inc.
*Java home: /usr/java/jdk1.6.0_25/jre*
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "2.6.42.3-2.fc15.x86_64", arch: "amd64", family: "unix"
h3. Maven settings
Follow https://community.jboss.org/docs/DOC-15170 these instructions to add reference to JBoss Repositories into your settings.xml. You'll also probably need access to the SNAPSHOT repository. So here is what you should see in your ~/.m2/settings.xml
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
....
<profiles>
....
<profile>
<id>jboss-default</id>
<repositories>
<!-- To resolve parent artifact -->
<repository>
<id>jboss-public-repository-group</id>
<name>JBoss Public Repository Group</name>
<url>http://repository.jboss.org/nexus/content/groups/public/</url>
</repository>
<repository>
<id>jboss-snapshots-repository</id>
<name>JBoss Snapshots Repository</name>
<url>https://repository.jboss.org/nexus/content/repositories/snapshots/</url>
</repository>
</repositories>
<pluginRepositories>
<!-- To resolve parent artifact -->
<pluginRepository>
<id>jboss-public-repository-group</id>
<name>JBoss Public Repository Group</name>
<url>http://repository.jboss.org/nexus/content/groups/public/</url>
</pluginRepository>
<pluginRepository>
<id>jboss-snapshots-repository</id>
<name>JBoss Snapshots Repository</name>
<url>https://repository.jboss.org/nexus/content/repositories/snapshots/</url>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>jboss-default</activeProfile>
...
</activeProfiles>
</settings>
h3. Maven & Java Memory Configuration
To configure the amount of memory used by Maven, you can define MVN_OPTS as follows, either in the mvn / mvn.bat script you use to run Maven, or set as global environment variables. Here's how to do so for http://forums.fedoraforum.org/showthread.php?t=262465 Fedora, https://help.ubuntu.com/community/EnvironmentVariables Ubuntu, http://forums.techarena.in/windows-xp-support/1152405.htm Windows, http://www.digitaledgesw.com/node/31 OSX.
{code}
set MAVEN_OPTS=-Xms512m -Xmx1024m -XX:PermSize=128m -XX:MaxPermSize=256m
{code}
h2. About Target Platform and related profiles
The target platform (TP) lists all dependencies (coming from Eclipse.or and other 3rd-party update sites) that are used by JBoss Tools. This target platform is materialized as an Eclipse p2 repository (formerly update-site) that is used during build to resolve dependencies. Target Platform is managed by JBoss Tools people, and only dependencies from this TP are allowed to be used in code.
If you need a new dependency in the TP, feel free to https://issues.jboss.org/secure/CreateIssueDetails!init.jspa?pid=10020&su... open a ticket to request it.
Here are several ways to build locally using this target platform. It's up to you to choose the one that match your needs:
h3. Using published Target Platform definition (Recommanded)
unified.target refers to the dependency as published in the Target Platfrom repository.
* Pros:* No additional thing to do than invoking Maven
* Always up-to-date
* Cons: Speed - (to evaluate)
Consume it by adding* +-Punified.target+* to you Maven invocation command-line
h3. Getting a local copy of the Target Platform (Recommanded)
* Pros: Speed +++
* Cons: Step to be repeated whenever https://source.jboss.org/browse/JBossTools/trunk/build/target-platform/un... target platform changes
h4. Set up
h5. Download TP as a zip and install it by yourself
You can either download the TP as a zip and unpack it into some folder on your disk. For convenience, the easiest is to unzip into jbosstools/build/target-platform/REPO/, since that's where the Maven or Ant process will by default operate.
You can get it with a browser or a command line tool such as wget or curl at the following url: http://download.jboss.org/jbosstools/updates/target-platform_3.3.indigo.SR2/ http://download.jboss.org/jbosstools/updates/target-platform_3.3.indigo.S...<actualFilename>*+.target.zip
and then unzip it here (the default path for -Dlocal.site, which means you can call maven with +*-Plocal.site*+ and not need to pass in +*-Dlocal.site=file:///path/to/some/other/folder/*+ as well):
unzip *.target.zip -d jbosstools/build/target-platform/REPO/
*(Note that the default path used for <local.site> will change every time a new target platform is released which is a significant change over the previous (eg., SR1, SR2), so if this breaks because the default not points at an empty folder, it's time to get a new TP! Hurray for build-time notification you're using an old target platform!)*
h5. OR, use Maven+Ant to get it
In that case, you also need Ant 1.8.2 or later*.*
cd jbosstools/build/target-platform
mvn clean install -Pget.local.target
The get.local.target profile will resolve the target platform file, multiple.target, as a p2 repository on your local disk in ~/trunk/build/target-platform/REPO/. It may take a while, so you're better off from a speed point-of-view simply fetching the latest zip [5]. However, if you want to see what actually happens to create the TP (as done in Hudson) this is the approach to take.
Since the Maven profile is simply a wrapper call to Ant, you can also use Ant 1.8 or later directly:
cd jbosstools/build/target-platform
ant help # show usage instructions
h4. Use
Just add -*P local.site -Dlocal.site=file:///path/to/target/repository/*
*NOTE:* You must specify a path starting with *file:///* (three or more slashes) to avoid errors such as "+p2.core.ProvisionException URI has an authority component+".
Examples
*LINUX / MAC USERS*
cd build
mvn clean install -U -B -fae -e -*P local.site -Dlocal.site=file:///${HOME}/trunk/build/target-platform/REPO/*| tee build.all.log.txt
*WINDOWS USERS*
cd c:\trunk\build
mvn3 clean install -U -B -fae -e -Plocal.site *-Dlocal.site=file:///C:/trunk/build/target-platform/REPO/* > build.all.log.txt
h3. Or resolving remotely with the Unified Target Platform
unified.target refers to the dependency as published in the Target Platfrom repository.
* Pros: No additional thing to do than invoking Maven
* Cons: Speed ---
Consume it by adding* +-Punified.target+* to you Maven invocation command-line
h2. (Optional) Build parent and target platform
This step is only useful if you are actually working on the parent or the target platform and want to test it locally. Otherwise, Maven will simply retrieve parent and TP from *https://repository.jboss.org/nexus/content/repositories/snapshots/org/jboss/tools/ JBoss Nexus* to perform your build.
This is only necessary when the TP change, prior to 3.3.Beta3
svn co http://svn.jboss.org/repos/jbosstools/trunk jbosstools
cd jbosstools/build/parent
mvn clean install
...
[INFO] Reactor Summary:
[INFO]
[INFO] JBoss Tools Target Platform Definition ............ SUCCESS [0.724s]
[INFO] JBoss Tools Parent ................................ SUCCESS [0.461s]
...
*NOTE: You need not fetch the entire JBoss Tools tree from SVN (or Git (http://divby0.blogspot.com/2011/01/howto-partially-clone-svn-repo-to-git....
*Instead, you can just fetch the build/ folder and one or more component folders, then as before,*
*build the parent pom. After that, go into the component folder and run maven there (#runmavenpercomponent).*
mkdir jbosstools
cd jbosstools
svn co http://svn.jboss.org/repos/jbosstools/trunk/ http://svn.jboss.org/repos/jbosstools/trunk/build
svn co http://svn.jboss.org/repos/jbosstools/trunk/ http://svn.jboss.org/repos/jbosstools/trunk/jmx
cd jbosstools/build/parent
mvn clean install
...
[INFO] Reactor Summary:
[INFO]
[INFO] JBoss Tools Target Platform Definition ............ SUCCESS [0.724s]
[INFO] JBoss Tools Parent ................................ SUCCESS [0.461s]
...
#
h2.
h2. Building Everything In One Build Locally Via Commandline
Assuming you have a local copy of the target platform in ${HOME}/trunk/build/target-platform/REPO/ (as explained previously:
*LINUX / MAC USERS*
cd build
mvn clean install -P local.site -Dlocal.site=file:///${HOME}/trunk/build/target-platform/REPO/ | tee build.all.log.txt
(tee is a program that pipes console output to BOTH console and a file so you can watch the build AND keep a log.)
*WINDOWS USERS*
cd c:\trunk\build
mvn3 clean install -P local.site -Dlocal.site=file:///C:/trunk/build/target-platform/REPO/
or
mvn3 clean install -Plocal.site -Dlocal.site=file:///C:/trunk/build/target-platform/REPO/ > build.all.log.txt
If you downloaded the zip and unpacked is somewhere else, use -Dlocal.site=file:///.../ to point at that folder instead.
#
h2. Building Individual Components Locally Via Commandline
h3. Build a component resolving to a recent aggregation build for other JBT dependencies (Recommanded)
* Pros:* You build only your component
* You only need source for your component
* Speed to resolve deps: +
* You get generally the latest build for you component
* Cons:* Takes some time to resolve dependencies on other component
* Can sometimes be out of sync if no build occured recently for a component you rely on and had some important change. More risk to get out of sync than with the staging site.
Tracked by https://issues.jboss.org/browse/JBIDE-11516 https://issues.jboss.org/browse/JBIDE-11516
*cd jmx*
mvn clean install -P local.site -Dlocal.site=file:///${HOME}/trunk/build/target-platform/REPO/ *-Pjbosstools-staging-aggregate*
h3. Build a component resolving to the latest CI builds for other JBT dependencies
* Pros:* You build only your component
* You only need source for your component
* You get generally the latest build for you component
* Cons* Takes some time to resolve dependencies on other component
* Can sometimes be out of sync if no build occured recently for a component you rely on and had some important change
* Speed to resolve deps: -
This profile is the one use for CI builds on Hudson.
*cd jmx*
mvn clean install -P local.site -Dlocal.site=file:///${HOME}/trunk/build/target-platform/REPO/ *-Pjbosstools-nightly-staging-composite*
h3. Build a component along with all its dependencies from sources ("bootstrap" build)
This will build exactly what you have locally
* Pros:* You are sure of the version of sources that is used for your JBT dependencies
* You don't loose time in resolving your JBT deps
* Cons:* You need sources for your dependencies too
* You often build more stuff that what you really want to test
cd ~/trunk/build
mvn clean install -P local.site,*jmx-bootstrap* -Dlocal.site=file:///${HOME}/trunk/build/target-platform/REPO/ | tee build.jmx.log.txt
#
h2. Building Locally In Eclipse
First, you must have installed m2eclipse into your Eclipse (or JBDS). You can install the currently supported version from this update site:
http://download.jboss.org/jbosstools/updates/indigo/ http://download.jboss.org/jbosstools/updates/indigo/
Next, start up Eclipse or JBDS and do *File > Import* to import the project(s) you already checked out from SVN above into your workspace.
https://community.jboss.org/servlet/JiveServlet/showImage/102-16604-47-13... https://community.jboss.org/servlet/JiveServlet/downloadImage/102-16604-4...
Browse to where you have the project(s) checked out, and select a folder to import pom projects. In this case, I'm importing the parent pom (which refers to the target platform pom). Optionally, you can add these new projects to a working set to collect them in your Package Explorer view.
https://community.jboss.org/servlet/JiveServlet/showImage/102-16604-47-13... https://community.jboss.org/servlet/JiveServlet/downloadImage/102-16604-4...
Once the project(s) are imported, you'll want to build them. You can either do *CTRL-SHIFT-X,M (Run Maven Build),* or right-click the project and select *Run As > Maven Build*. The following screenshots show how to configure a build job.
First, on the *Main* tab, set a *Name*, *Goals*, *Profile*(s), and add a *Parameter*. Or, if you prefer, put everything in the *Goals* field for simplicity:
+clean install -U -B -fae -e -Plocal.site -Dlocal.site=file://home/nboldt/tmp/JBT_REPO_Indigo/+
Be sure to check *Resolve Workspace artifacts*, and, if you have a newer version of Maven installed, point your build at that *Maven Runtime* instead of the bundled one that ships with m2eclipse.
https://community.jboss.org/servlet/JiveServlet/showImage/102-16604-47-13... https://community.jboss.org/servlet/JiveServlet/downloadImage/102-16604-4...
On the *JRE* tab, make sure you're using a 6.0 JDK.
https://community.jboss.org/servlet/JiveServlet/showImage/102-16604-47-13... https://community.jboss.org/servlet/JiveServlet/downloadImage/102-16604-4...
On the *Refresh* tab, define which workspace resources you want to refresh when the build's done.
https://community.jboss.org/servlet/JiveServlet/showImage/102-16604-47-13... https://community.jboss.org/servlet/JiveServlet/downloadImage/102-16604-4...
On the *Common* tab, you can store the output of the build in a log file in case it's particularly long and you need to refer back to it.
https://community.jboss.org/servlet/JiveServlet/showImage/102-16604-47-13... https://community.jboss.org/servlet/JiveServlet/downloadImage/102-16604-4...
Click *Run* to run the build.
https://community.jboss.org/servlet/JiveServlet/showImage/102-16604-47-13... https://community.jboss.org/servlet/JiveServlet/downloadImage/102-16604-4...
Now you can repeat the above step to build any other component or plugin or feature or update site from the JBoss Tools repo. Simply import the project(s) and build them as above.
h2. Installation Testing - making sure your stuff can be installed
Each component, when built, produces a update site zip and an unpacked update site which can be used to install your freshly-built features and plugins into a running Eclipse or JBDS instance.
Simply point your Eclipse at that folder or zip, eg., jar:file:/home/rob/code/jbtools/jbosstools/trunk/runtime/site/target/runtime.site.zip! or file:///home/rob/code/jbtools/jbosstools/trunk/runtime/site/target/repository/, and browse the site. If your component requires other upstream components to install, eg., Runtime Detection depends on JBoss Common, you will also need to provide a URL from which Eclipse can resolve these missing dependencies. In order of freshness, you can use:
1. http://download.jboss.org/jbosstools/updates/nightly/core/trunk/ http://download.jboss.org/jbosstools/updates/nightly/core/trunk/ (Nightly Trunk Site - updated every few hours or at least daily - *bleeding edge*)
2. http://download.jboss.org/jbosstools/builds/staging/_composite_/core/trunk/ http://download.jboss.org/jbosstools/builds/staging/_composite_/core/trunk/ (Composite Staging Site - updated every time a component respins - *bleedinger edge*)
3. http://anonsvn.jboss.org/repos/jbosstools/trunk/build/aggregate/local-site/ http://anonsvn.jboss.org/repos/jbosstools/trunk/build/aggregate/local-site/ (see the README.txt for how to use this site to refer to things you built locally - *bleedingest edge*)
h2. Adding a new feature or plugin to an existing component
Need to tweak a component to add a new plugin or feature? See https://community.jboss.org/docs/DOC-18373 https://community.jboss.org/wiki/AddingAPluginandorFeatureToAnExistingCom....
h2.
h2. Tips and tricks for making BOTH PDE UI and headless Maven builds happy
It's fairly common to have plugins compiling in eclipse while tycho would not work. Basically you could say that tycho is far more picky compared to Eclipse PDE.
h3.
Check your build.properties
Check build.properties in your plugin. If it has warnings in Eclipse, you'll most likely end with tycho failing to compile your sources. You'll have to make sure that you correct all warnings.
Especially check your build.properties to have entries for *source..* and *output..* -- these are needed to *http://wiki.eclipse.org/Minerva#Source generate source plugins and features*.
*
*
source.. = src/
output.. = bin/
src.includes = *
src.excludes = src
bin.includes = <your own,\
list of,\
files for inclusion,\
in the jar>
h3. Check your manifest.mf dependencies
A new issue when building against juno shows that all compilation dependencies MUST be EXPLICITLY mentioned in your manifest.mf list of dependencies. A recent example of how this can cause compilation errors is the archives module, which failed to build due to the org.eclipse.ui.views plugin, and its IPropertySheetPage interface, not being found during the build. After investigation, it was discovered that the archives.ui plugin did not explicitly declare a dependency on org.eclipse.ui.views.
Inside eclipse and during indigo builds, however, the depencency was found and there were no compilation errors. This was because a plugin archives.ui explicitly dependend on (org.eclipse.ui.ide) had an explicit dependency on org.eclipse.ui.views. The IDE was able to see that archives.ui dependended on org.eclipse.ui.ide, and org.eclipse.ui.ide depended on org.eclipse.ui.views.
Resolving nested dependencies no longer seems to be guaranteed, and so anything you have a compilation dependency on must now be explicitly declared in your manifest.mf.
--------------------------------------------------------------
Comment by going to Community
[https://community.jboss.org/docs/DOC-16604]
Create a new document in JBoss Tools Development at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=102&c...]
12 years, 9 months